微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

SVN SVN合并(Merge)与拉取分支(Branch/tag)操作简介

SVN合并(Merge)与拉取分支(Branch/tag)操作简介

合并(Merge)

例子:把对feature_branch\project_name_v3.3.7_branch的修改合并到develop

 

步骤1

如图,右键目标文件夹,即需要“合并到”的文件目录,选择TortoiseSVN->Merge…

 



 

弹出如下窗口

 




 

步骤1

如上图,认选择“Merge a range of revisions”,点击Next,打开如下窗口

 




如上,

“URL to merge from”:点击输入框右侧 … 按钮,选择包含所做修改文件夹(例中为 project_name_v3.3.7_branch)

“Revision range to merge”:选择需要合并的修改版。

all revision 所有还没有合并的版本

specific range: 指定范围的修改版(推荐),可以单个svn版本,比如108,也可以是多版本,比如101-108或者逗号分隔101,105,108,这样会把101,105,108的修改都合并到develop,如下图,可以通过打开Show log对话框,根据提交日志来选取不同的版本

 



 

说明:这里需要注意的是specific range,仅将指定版本的修改合并到目标文件夹。比如对project_name_v3.3.7_branch做了多次修改修改了file1,生成svn修订版105,修改了file2的内容生成svn修订版108,那如果specific range只选择108,那么对105中对file1的修改将不会被合并到develop

 

步骤3

步骤2中,点击next按钮,打开如下窗口

SVN <wbr>SVN合并(Merge)与拉取分支(Branch/tag)操作简介

如上,点击Test merge,查看能否正常合并。如果有冲突则会提示。最后点击Merge合并。

 

注意:合并仅仅是合并到本地文件夹目录,所以合并完成后,记得要Commit提交到SVN。

 

关于Merge Type

步骤2中也可以选择Merge two different trees

 



说明:选择该选项,会把两个目录的“不一样”合并到目标文件夹目录,这里“不一样”,是以非目标文件夹为基准的,比如project_name_v3.3.7_branch的修改合并到develop,将以project_name_v3.3.7_branch为基准,按指定版本,把project_name_v3.3.7_branch和develop的不一样合并到develop目录,这样的话可能会把develop中增加文件删除,或者把develop对某个文件做的修改覆盖掉,最终使得develop和project_name_v3.3.7_branch一模一样。

 

单击Next,弹出如下窗口

 




说明:

From:选择的目标文件夹,即需要“合并到”的svn目录

To:选择包含所做修改的svn目录

同样的,这里也可以指定版本号

 

 

拉取分支、打tag(Branch/tag)

例:为develop拉取分支release_branch

步骤1

右键需要拉取分支的目标文件夹,选择TortoiseSVN->Branch/tag

SVN <wbr>SVN合并(Merge)与拉取分支(Branch/tag)操作简介

 

 

 

打开如下弹窗

步骤2

 

 

SVN <wbr>SVN合并(Merge)与拉取分支(Branch/tag)操作简介

 

To path:选择需要“拉取到”的目标文件夹。

根据需要填写Recent Message(推荐),选择需要拷贝的版本(revision)。最后点击Ok

 

注意:拉取分支,会自动提交svn,需要update更新分支目录到本地才能看到

 

原文地址:https://blog.51cto.com/shouke/2871449

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐