我使用 subversion 已经有一段时间了,并且在我的旧工作中使用了 svnmerge.py 脚本来管理分支之间的合并。我相信 Subversion 1.5 现在已经发布,并且应该有一些与它集成的分支/合并管理系统。
那么,有人可以快速概述一下如何使用 Subversion 1.5 跟踪分支中的合并吗?使用这种支持有什么陷阱吗?在使用此支持之前,我是否需要确保所有团队都升级到 1.5?
我使用 subversion 已经有一段时间了,并且在我的旧工作中使用了 svnmerge.py 脚本来管理分支之间的合并。我相信 Subversion 1.5 现在已经发布,并且应该有一些与它集成的分支/合并管理系统。
那么,有人可以快速概述一下如何使用 Subversion 1.5 跟踪分支中的合并吗?使用这种支持有什么陷阱吗?在使用此支持之前,我是否需要确保所有团队都升级到 1.5?
合并跟踪由客户端管理并存储在属性(svn:mergeinfo)中。
要使用合并跟踪,您只需像往常一样合并,但没有修订范围:
svn merge trunkURL
客户端将负责读取属性以查看需要合并的修订版,然后使用新合并的修订版更新属性。
这是该过程的一个非常基本的概述。
我个人在合并跟踪方面没有遇到任何问题,但我对该功能的使用非常轻松。
您需要进行两项升级才能获得合并跟踪:
只是升级每个人。
克里斯的帖子的补充:
如果您遇到“Retrieval of mergeinfo unsupported”消息,您可能还必须升级存储库本身。在服务器上运行的命令是,
svnadmin upgrade REPOS_PATH
其中 REPOS_PATH 是您的存储库的本地路径。
如果您使用 ~svn-merge.py 命令构建了存储库,则可以升级存储库以使用带有 XXX 命令的 svn 本机合并跟踪。