【发布时间】:2012-08-04 18:57:45
【问题描述】:
我在git svn dcommit 中犯了一个错误,我想撤消提交。 (我实际上是想推到一个分支,但推到了主干。)我怎样才能用 git-svn 做到这一点?
【问题讨论】:
-
所以这个想法是使用
git revert <commit_hash>然后git svn dcommit? -
是的...写下来作为答案,我会投票给你。
我在git svn dcommit 中犯了一个错误,我想撤消提交。 (我实际上是想推到一个分支,但推到了主干。)我怎样才能用 git-svn 做到这一点?
【问题讨论】:
git revert <commit_hash> 然后git svn dcommit?
Subversion 无法像 Git 那样撤消提交。最近我了解到,使用 TortoiseSVN 可以追溯修改 Subversion 提交消息,但 Subversion 提交本身或多或少是最终的。
所以你需要的是一个新的提交,它使用git revert <commit_hash> 恢复你的更改,然后是下面的git svn dcommit,正如你已经在你的 cmets 中指出的那样。
不幸的是,这无助于避免修改后的文件与其他人发生冲突,即使这两个提交实际上什么都不做。
【讨论】: