我是SVN的新手。我发现将分支A合并到分支B时,SVN将分支A中的所有内容移至B,而不是复制。当您将分支A复制到分支C并再次执行相同的操作时,它给您一个错误,分支C已经存在。
我要完成的是:
branch/dev–用于发展branch/dev到branch/test–进行功能测试branch/test到trunk–供舞台使用由于无法覆盖现有分支,因此当我要branch/dev再次复制时,需要先删除测试,这很不方便。
有办法吗?
如果从复制/a到/b,则复制到时/b将结束/a/b。
如果您想要等效于覆盖复制,则必须先删除然后再复制,如下所示:
svn delete https://myserver/myrepo/branch/test -m "Removing test prior to copy"
svn copy https://myserver/myrepo/branch/dev -r HEAD
https://myserver/myrepo/branch/test
--parents -m "Copying dev branch to test"
Run Code Online (Sandbox Code Playgroud)
当测试分支中的用户执行时svn update,svn足够聪明,仅下载已更改的文件,而无需重新下载整个项目。
这种方法的缺点是,即使只有几秒钟,该分支也将不存在,并且已经存在于该分支中的用户尝试更新时会出现错误。