linux svn switch,svn switch

名称

svn switch              — 把工作拷贝更新到别的URL。

概要

svn switch URL [PATH]

switch --relocate FROM TO [PATH...]

描述

这个子命令(没有--relocate选项)更新你的工作拷贝来反映新的URL—通常是一个与你的工作拷贝分享共同祖先的URL,尽管这不是必需的。这是Subversion移动工作拷贝到分支的方式。更深入的了解请见“使用分支”一节。

--relocate选项导致svn switch做不同的事情:它更新你的工作拷贝指向到同一个版本库目录,但是不同的URL(通常因为管理员将版本库转移了服务器,或到了同一个服务器的另一个URL)。

别名

sw

改变

工作拷贝2

是否访问版本库

选项

--revision (-r) REV --non-recursive (-N) --quiet (-q) --diff3-cmd CMD --relocate FROM TO --username USER --password PASS --no-auth-cache --non-interactive --config-dir DIR

例子

如果你目前所在目录vendors分支到vendors-with-fix,你希望转移到那个分支:

$ svn switch http://svn.red-bean.com/repos/branches/vendors-with-fix . U  myproj/foo.txt U  myproj/bar.txt U  myproj/baz.c U  myproj/qux.c Updated to revision 31.

为了跳转回来,只需要提供最初取出工作拷贝的版本库URL:

$ svn switch http://svn.red-bean.com/repos/trunk/vendors . U  myproj/foo.txt U  myproj/bar.txt U  myproj/baz.c U  myproj/qux.c Updated to revision 31.

提示

如果你不希望跳转所有的工作拷贝,你可以只跳转一部分。

有时候管理员会修改版本库的“基本位置”—换句话说,版本库的内容并不改变,但是访问根的主URL变了。举个例子,主机名变了、URL模式变了或者是URL中的任何一部分改变了。我们不选择重新检出一个工作拷贝,你可以使用svn switch来重写版本库所有URL的开头。使用--relocate来做这种替换,没有文件内容会改变,访问的版本库也不会改变。只是像在工作拷贝.svn/运行了一段Perl脚本s/OldRoot/NewRoot/。

$ svn checkout file:///tmp/repos test A  test/a A  test/b … $ mv repos newlocation $ cd test/ $ svn update svn: Unable to open an ra_local session to URL svn: Unable to open repository 'file:///tmp/repos' $ svn switch --relocate file:///tmp/repos file:///tmp/newlocation . $ svn update At revision 3.

警告

小心使用--relocate选项,如果你输入了错误的选项,你会在工作拷贝创建无意义的URL,会导致整个工作区不可用并且难于修复。理解何时应该使用--relocate也是非常重要的,下面是一些规则:

如果工作拷贝需要反映一个版本库的新目录,只需要使用svn switch。

如果你的工作拷贝还是反映相同的版本库目录,但是版本库本身的位置改变了,使用svn switch –relocate。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值