svn通过ssh连接移动整个目录及其所有内容

时间:2011-07-15 07:41:22

标签: svn

我使用svn并将我的存储库存储在远程linux服务器上,可通过ssh访问。无论什么时候我想在新机器上处理一些代码,我都会这样结帐:

svn checkout svn+ssh://remoteuser@remoteserver/path/to/repo /path/to/localdirname

(在结帐前不必存在localdirname)

然而,在对本地副本上的目录进行svn移动时经常遇到问题,例如将目录a重命名为b

svn move localdirname/a/ localdirname/b/ 

这样可以正常工作,但如果我之后以错误的顺序执行提交,那么事情就会陷入一团糟。人们总是建议svn cleanupsvn update之类的东西,但我通常无法使这些工作起作用,最终会删除本地副本并再次检出。那么如何移动整个目录并一次性提交呢?

1 个答案:

答案 0 :(得分:0)

我试过这个并且工作正常:

svn move -m "renamed" svn+ssh://remoteuser@remoteserver/path/to/repo/a svn+ssh://remoteuser@remoteserver/path/to/repo/b
# then on the local copy
svn update localdirname/a
svn update localdirname/b

localdirname/a消失,localdirname/b出现

这有效地移动了存储库上的目录,而不是本地副本。