我正在使用git-svn。我已将文件“ A”移至“ B”,并且使用的是svn HEAD(使用git svn rebase)。我可以毫无问题地进行所有其他更改。现在,我决定将“ B”移回“ A”并提交更改。

当我进行移动并提交给本地主机时,它可以正常工作,但是在执行git svn dcommit时得到以下信息:

Transaction is out of date: Out of date: 'A' in transaction '3652-1' at /opt/local/libexec/git-core/git-svn line 570


所以我尝试在一个单独的提交中复制和删除,结果是:

Item already exists in filesystem: File already exists: filesystem '/usr/svn/db', transaction '3652-1', path 'A' at /opt/local/libexec/git-core/git-svn line 4735


我已经通过使用documentation中描述的变通方法通过普通svn从这种情况中恢复了,但是我不知道如何使用git-svn进行恢复。发生了什么事,我该如何解决?

最佳答案

删除.git / svn对我不起作用。相反,这是我的解决方法:


从存储库中删除了有问题的目录(但是我不确定这是否必要。事后看来,我认为我可以跳过这一步)
git svn rebase
在改组期间,存在一些冲突。对于每个冲突,我在文本编辑器中解决了冲突,然后分别使用git add <file-in-conflict>git rebase --continue
重新完成基准成功后,git svn dcommit成功运行!

08-27 21:29
查看更多