SVN实现在更新本地版本库时忽略指定目录

【SVN的使用- SVN的基本命令-SVN命令简写-注意事项-解决冲突 Objective-C语言】 阅读详情
SVN实现在更新本地版本库时忽略指定目录
很多时候,你的svn repo(假定project)很大(这里指包括所有tags和branches),但是其实你真正需要的却只有一两个(比如说trunk,以及和trunk平级的install目录,同时install目录和trunk目录有着这样活那样的联系),这时你就希望在svn co的时候是co整个project并且忽略你不想要的目录。当然,你大可不必co整个project,而单独co你想要的目录就行了。但是,从SCM的角度出发,你不可以强行改变用户的使用习惯,不排除就有这么些人喜欢这样操作,尤其是对于那些喜欢用命令行的人而言。

可能我这么说,大家没有什么概念,我给大家举个例子,大家应该就知道这是一种什么情况了:

大家都知道,在一个项目的SCM管理中,往往要求开发者通过打tag的方式来进行版本发布,tag存在于tags目录,tags目录往往与trunk/branches目录平级,这里还有一个install目录,如下:
project/   
|-- branches   
|   |-- branch1   
|   |-- branch2   
|   `-- branch3   
|-- install   
|-- tags   
|   |-- tag1   
|   |-- tag2   
|   |-- tag3   
|   |-- tag4   
|   `-- tag5   
`-- trunk   
    `-- src  

tags目录虽然是一个标签副本,但在checkout的过程中,是会针对一份完整代码的,因此很多人都不希望在本地的working copy中保留这个tags目录。遗憾的是,svn co命令并没有这样一个选项去忽略这个目录。

事实上,我也遇到了这个问题,在我看了很多help之后,终于找到了办法。具体如下(分两种情况讨论):
I. 本地保存有完整的Working Copy情况:
换句话说就是,你已经将svn中完整的repos/directories checkout到本地了(本地已经有一份你在服务器端的完整Copy了)。这时,你只需要运行以下命令将tags以及branches目录排除在svn up列表:
# svn update --set-depth=exclude tags branches
D    tags
D    branches 

选项后面可以跟多个目录,这样,就在你当前的working copy中成功的将tags和branches目录排除掉了,在你下一次的update中,就不会去理会这两个目录了,但同时有保证了你的project是在version control下的,因此不需要每次都逐个进入目录进行svn up了。

II. 进行一次全新的忽略目录Checkout操作:
这种情况如果是在windows下,就显得非常简单,你只需要使用乌龟客户端的“Choose Item”按钮。

但是如果是在命令行的情况下,那就要稍微复杂一点了,请按照如下操作:

1. 首先将目录树checkout到本地:
[root]@[Fck_with_U]:[~/temp]->>svn co http://svn_test_url.com/test_dir my_checkout --depth immediates   
A    my_checkout/backup   
A    my_checkout/doc   
A    my_checkout/scripts   
A    my_checkout/src   
A    my_checkout/data   
A    my_checkout/tool   
Checked out revision 736189

2. 将你不想co的目录排除在外(比如这里我想排除backup, data, doc, src, tool这五个目录,只想checkout scripts目录):
[root]@[Fck_with_U]:[~/temp]->>cd my_checkout/   
[root]@[Fck_with_U]:[~/temp/my_checkout]->>ls   
backup  data  doc  scripts  src  tool   
[root]@[Fck_with_U]:[~/temp/my_checkout]->>svn up --set-depth=exclude backup data doc src tool   
D         backup   
D         data   
D         doc   
D         src   
D         tool  

3. 更新你想要的scripts目录:
[root]@[Fck_with_U]:[~/temp/my_checkout]->>svn update --set-depth infinity scripts/   
A    scripts/trunk   
A    scripts/trunk/test   
...........  

【转载地址】http://scmbob.org/exclude-dirs-when-svn-up.html
(本文来自互联网,不代表搜站(http://www.ylzx8.cn/)的观点和立场)
【亲测可行】SVN的添加忽略 【准备工作】 一、服务端注册账号,下载客户端 【亲测可行】SVN环境准备(服务端:SVNBucket,客户端:TortoiseSVN) 【类似笔记】 【亲测可行】SVN的常用操作:创建项目、检出、提交、更新、查看历史记录 【亲测可行】SVN的撤销和恢复 有些时候,有些文件不想提交,我们可以添加忽略 文章目录一、忽略文件夹1.右击要忽略的文件夹-TortoiseSVN-去除版本控制并增加到忽略列表-要忽略的文件夹名2.跳出弹框,点击“确认”,此时文件夹名上出现红“×”3.此时再进行SVN提交,添加忽略的文. 阅读详情

相关推荐

磁盘I/O %util特别高

磁盘I/O %util特别高

eagle89的专栏 3090

SVN常用命令之update

常用命令: 1、svn update 注:后面也可以指定目录 如果命令后无目录,则将当前目录及其子目录下的所有文件都更新到最新版本。  2、svn update -r 200 test.php 将本地副本中的文件test.php还原到版本200 3、svn update test.php 更新成与版本库同步的最新版本。 注:如果在提交的时候提示过期的话,是因为冲突,需要先u

未来,你好! 10万+

单片机多级菜单的简单实现

单片机多级菜单的简单实现 多级菜单的思路 最近想把stm32上的oled显示屏做的好看一些,于是动手写了写一个多级菜单,思路很简单,每个页面用单独的函数封装好,每个功能也是用单独的函数进行封装,用了3个按键,两个切换键,一个确定键。 首先来看看用啥判断页面的(这偷个懒,希望没人打我) //页面标志位 uint8_t s1 = 0; //主页面功能号 uint8_t s2 = 0; //主次页面判断标志位 uint16_t s3 = 1; //次页面功能号 主页面的显示函数,这是个很枯燥的一

qq_43940175的博客 7605

svn设置某个文件不参与update

以下面这个文件为例:DataAccess.java 下面来演示如何将这个文件设置为svnupdata时不更新它~ 右键->TortoiseSVN->unversion and add to ignore list->选DataAccess.java 设置完成后,提示如下: 这样,再次svn更新时,这个文件就不会随着一起更新了~~

IcyWang1的博客 2万+

LM358实战:手把手教你搭建电流检测电路(附电阻选型计算)

本文详细解析了使用LM358运算放大器搭建电流检测电路的全过程,包括基础原理、采样电阻选型、放大电路设计及PCB布局技巧。通过实战案例和精确计算,帮助工程师快速掌握低成本、高精度的电流检测方案,适用于电源管理、电机控制等多种应用场景。

weixin_30872157的博客 449

告别SendKeys!用DD驱动级模拟在Windows 10/11上实现真·后台键鼠操作(Python实战)

本文详细介绍了如何使用DD驱动级模拟技术在Windows 10/11上实现真后台键鼠操作,解决传统方法如pyautogui和SendKeys的局限性。通过Python实战案例,展示了驱动级模拟在游戏自动化、RPA等场景中的高效应用,包括环境配置、核心API解析及高级优化技巧。

weixin_42519985的博客 802

SVN的操作命令(纯命令)

SVN纯命令

qq_46020806的博客 1万+

保姆级教程:用NVIDIA Jetson AGX Xavier和GMSL2相机搭建8路车载视觉原型系统

本文提供了一份详细的教程,指导如何使用NVIDIA Jetson AGX Xavier开发板和GMSL2相机搭建8路车载视觉原型系统。内容涵盖硬件选型、系统架构设计、软件环境配置、多路视频采集实现以及性能优化与问题排查,帮助开发者快速掌握GMSL2技术在车载视觉系统中的应用。

weixin_42525005的博客 295

install msvn 跳过_SVN实现在更新本地版本库时忽略指定目录

project/|-- branches| |-- branch1| |-- branch2| `-- branch3|-- install|-- tags| |-- tag1| |-- tag2| |-- tag3| |-- tag4| `-- tag5`-- trunk`-- srctags目录虽然是一个标签副本,但在checkout的过程中,是会针对一份完整代...

weixin_34920577的博客 462

ZYNQ学习:PL端DDR3 读写测试

DDR SDRAM 的最大特点是双沿触发,即在时钟的上升沿和下降沿都能进行数据采集和发送,同样的工作时钟, DDR SDRAM 的读写速度可以比传统的 SDRAM 快一倍。本次实验使用的 DDR3 芯片是南亚的 NT5CC256M16ER-EKI, NT5CC256M16ER-EKI 的 bank 位宽为 3,行位宽为 15,列位宽为 10,所以它的地址大小等于 2^3*2^15*2^10(即 2^28=256M),数据位宽为 16bit,所以容量大小为 256M*16bit,也就是 512MByte。

shuidiQAQ的博客 3031

Matlab2024a安装教程

点击【下一步】。8.选择解压后的【MATLAB R2024a(64bit)】文件夹中【Crack】文件夹下的【licese.lic】,点击【打开】。

qq_64359046的博客 4821

转载:SVN实现在更新本地版本库时忽略指定目录

原文地址:http://scmbob.org/exclude-dirs-when-svn-up.html 很多时候,你的svn repo(假定project)很大(这里指包括所有tags和branches),但是其实你真正需要的却只有一两个(比如说trunk,以及和trunk平级的install目录,同时install目录和trunk目录有着这样活那样的联系),这时你就希望在svn ...

weixin_30883777的博客 175

未连接互联网的银河麒麟v10安装g++,各种报错,如何处理?

🏆本文收录于《全栈Bug调优(实战版)》专栏,主要记录项目实战过程中所遇到的Bug或因后果及提供真实有效的解决方案,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!! 备注:部分问题/疑难杂症搜集于互联网。

**My Coding Family** 1803

如何忽略SVN目录?

我刚开始使用SVN,我有一个在源代码管理下不需要的缓存目录。 如何忽略SVN的整个目录/文件夹? 我在OS X和命令行上使用Versions和TextMate 。

p15097962069的博客 1198

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

SVN 更新时忽略指定文件或目录

SVN 更新时忽略指定文件夹

wsccdsn的专栏 1万+

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

SVN常见的重要文件和目录及作用

SVN版本控制系统由多个关键目录和文件组成,共同实现版本管理功能。核心组件包括:1)工作副本中的.svn目录,存储本地元数据(wc.db数据库、原始文件副本等);2)服务器端的版本库,保存所有版本历史;3)配置和认证文件(config、auth);4)特殊属性(svn:ignore、svn:externals)控制文件跟踪和外部引用;5)日志和锁定机制保障变更追踪和并发控制。这些组件协同工作,支持文件版本管理、差异跟踪、历史恢复和团队协作,任何损坏都可能导致数据丢失或系统不可用。维护这些组件的完整性对SVN

turboyuan的博客 2037

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

SVN忽略一些文件夹的更新

SVN忽略一些文件夹的更新   背景:我们trunk内容最少20G了,未来会越来越多。但是我们本地的磁盘空间有限,所有要对不需要更新的文件夹设置停止更新,先删除文件夹里面的内容,再忽略SVN更新,那么这些文件夹就不占空间了。   忽略文件夹的更新: 选中需要忽略的文件夹--右键—TortoiseSVN—Unversion and add to ignore list; 示例:不再更新“

franktan2010的专栏 1万+

让 SVN (TortoiseSVN)提交时忽略指定目录

2013-06-23 更新后来我使用属性来过滤,结果反而没有效果了,之后我再次尝试使用全局忽略样式设置:*/bin */obj */packages结果又有效果了,奇怪了。 ------- 由于我在全局忽略样式中设置的没有效果,具体什么原因,我也无法确定,有了解的朋友,请留言指教。 然后我根据网上提到的方法进行设置。http://www.cnblogs.com/Ry...

WGH100817的博客 343

linux svn 命令行 checkout 忽略目录

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34292402的博客 1556

让乌龟SVN (TortoiseSVN)提交时忽略目录

后来我使用属性来过滤,结果反而没有效果了,之后我再次尝试使用全局忽略样式设置:*/bin */obj */packages 结果又有效果了,奇怪了。  -------  由于我在全局忽略样式中设置的没有效果,具体什么原因,我也无法确定,有了解的朋友,请留言指教。   然后我根据网上提到的方法进行设置。 http://www.cnblogs.com

linybo的专栏 1万+

svn更新时忽略指定文件或文件夹

svn更新时忽略指定文件或文件夹,比如有时候要忽略部分文件不更新,如svn branches,tags文件夹 方法/步骤 选择一个收SVN控制的文件夹-》右击-》选择TortoiseSVN-》更新至版本,就会出现 选择更新深度为工作副本,再选择项目,出现如图中所示的界面,把不想更新的文件或者文件夹前面的勾去掉,这样就能在svn更新的

ksr12333的专栏 7645

svn版本库创建,本地文件副本生成使用

首先,以root用户创建版本库,并导入数据 1. 创建库文件所在的目录:mkdir svn工作文件夹 mkdir svnrepos 2. 创建svn版本库:svnadmin create svn的工作文件夹绝对路径 snvadmin create /data/user/svnrepos 3. 设置环境变量,并运行配置文件(可先查看环境变量SVN_EDITOR,若已设置过,此步骤忽略...

u013639526的专栏 1818

SVN——将VS项目提交至SVN时,怎样忽略bin和obj目录中的文件

方法一:通过设置SVN的Global ignore pattern值。在设置了全局排除obj bin文件夹之后,需commit提交该项目,以使svn服务器应用该排除忽略方法二:具体实现在解决方案目录上点右键在乌龟菜单中找到"属性"点开在弹出窗中点"新增"在弹出窗中的"属性"中选择"svn:ignore"然后取值中填上bin和obj各一行确认并提交目录更新然后每次提交解决方案目录的时候就会忽略掉b...

weixin_30625691的博客 772
上一篇: cocos2d-x 中添加显示文字的三种方式 LabelTTF 、LabelBMFont 和 LabelAtlas
下一篇: Sublime Text 3 解决中文乱码问题
-夜下月光-
博客等级 码龄15年 20粉丝 35原创
评论 2
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值