两个人在本地运行git并使用git-svn与远程主SVN服务器同步。
Person A执行SVN REBASE并修改其本地git文件。 B人也做一个SVN REBASE并在他们的git中本地修改同一个文件以解决另一个问题。
B人使用GIT SVN DCOMMIT提交。
Person A使用GIT SVN DCOMMIT提交,但由于他们缺少Person B提交,因此会回滚Person B的提交。
如果远程SVN服务器需要重新设置,有没有办法标记GIT SVN DCOMMIT?
答案 0 :(得分:-1)
您上面的用法有错误或非常奇怪。会发生什么:
<小时/> 1)通过
git svn clone
检出存储库
2)当A或B做出改变时,他们应该:
2a)进行更改
2b)git commit
它
2c)继续工作(进入2a)或向上推动变化
3)在提交自己的东西之前,他们需要做git svn rebase
。 git-svn实际上已经阻止你进入第4步,直到你与上游的svn repo同步
4)git svn dcommit
如果您按照上述步骤操作,则在未先运行rebase的情况下,您无法从第3步到第4步(git dcommit
)。由于rebase将所有更改移动到git中的SVN树顶部,因此您永远不会反转其他人的更改。
现在....如果你想从A到B或B到A做git pull
:有龙;你不应该这样做。 (好吧,你可以,但它更棘手;上面更安全)