使用svn merge实现回退版本

本文介绍了如何使用svnmerge工具进行版本合并,包括不同场景下的命令使用方法,如将分支合并到主干、将主干合并到分支及单一文件的合并等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

使用svn merge可以实现版本的回退功能。这里svn中对于merge命令的使用方法转载过来,以备查用。

名称

svn merge — 应用两组源文件的差别到工作拷贝路径。

概要

svn merge sourceURL1[@N] sourceURL2[@M] [WCPATH]
svn merge sourceWCPATH1@N sourceWCPATH2@M [WCPATH]
svn merge -r N:M SOURCE[@REV] [WCPATH]

描述

第一种和第二种形式里,源路径(第一种是URL,第二种是工作拷贝路径)用修订版本号NM指定,这是要比较的两组源文件,如果省略修订版本号,缺省是HEAD

第三种形式,SOURCE可以是URL或者工作拷贝项目,与之对应的URL会被使用。在修订版本号NM的URL定义了要比较的两组源。

WCPATH是接收变化的工作拷贝路径,如果省略WCPATH,会假定缺省值“.”,除非源有相同基本名称与“.”中的某一文件名字匹配:在这种情况下,区别会应用到那个文件。

不像svn diff,合并操作在执行时会考虑文件的祖先,当你从一个分支合并到另一个分支,而这两个分支有各自重命名的文件时,这一点会非常重要。

别名

变化

工作拷贝

是否访问版本库

只有在对URL操作时会

选项

--revision (-r) REV
--non-recursive (-N)
--quiet (-q)
--force
--dry-run
--diff3-cmd CMD
--ignore-ancestry
--username USER
--password PASS
--no-auth-cache
--non-interactive
--config-dir DIR

例子

将一个分支合并回主干(假定你有一份主干的工作拷贝,分支在修订版本250创建):

$ svn merge -r 250:HEAD http://svn.red-bean.com/repos/branches/my-branch
U myproj/tiny.txt
U myproj/thhgttg.txt
U myproj/win.txt
U myproj/flo.txt

如果你的分支在修订版本23,你希望将主干的修改合并到分支,你可以在你的工作拷贝的分支上这样做:

$ svn merge -r 23:30 file:///tmp/repos/trunk/vendors
U myproj/thhgttg.txt

合并一个单独文件的修改:

$ cd myproj
$ svn merge -r 30:31 thhgttg.txt
U thhgttg.txt

 

 原文地址 http://svndoc.iusesvn.com/svnbook/svn.ref.svn.c.merge.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值