我正在评估git-svn并尝试确定它与特定svn存储库的效果.我主要关心的是让git-svn执行合并,以便在subversion repo中正确设置svn:mergeinfo属性.这可能吗?
这是我到目前为止所做的:
# Checkout the SVN repo.
$ git svn clone svn://server/project1 -T trunk -b branches -t tags
# Make sure we are working on trunk.
$ git reset --hard remotes/trunk
# Modify the working copy.
$ vim file.txt
# Commit locally to the git repo.
$ git commit -a
# Push the commits back to the SVN server.
$ git svn dcommit
Committing to svn://server/project1/trunk ...
M file.txt
Committed r178
M file.txt
r178 = b6e4a3a0c28e7b9aa71d8058d96dcfe7c8a2b349 (trunk)
Run Code Online (Sandbox Code Playgroud)
现在,我将如何将该特定提交合并到一个subversion分支中?同样,对我来说非常重要的是git在提交更改时正确设置了svn:mergeinfo属性.
我的项目中出现了一些复杂的颠覆合并:长期分离的大分支.Svn给出了太多的冲突 - 其中一些似乎是虚假的.
鉴于git对于优秀的合并体验而言,为了使合并更易于管理,使用git-svn 它是否有益?
你能推荐其他的替代品(如svk,hgsvn),以减轻疼痛合并?
有些冲突很容易解决(例如java导入,空格) - 所以我也想知道是否有任何自动解决方案.
将来可能会完全切换到DVCS(我们中的一些人会喜欢),但现在不行.(更新:这不再是真的 - 团队最近完全切换并对此感到高兴).
提前致谢.
PS:有些帖子似乎是相关的(例如git-svn合并2个svn分支),但他们没有完全回答这个问题.
更新:看完我的-novice-回答后再往下走(这个道路).