1
https://review.openstack.org/#/c/64401/

以上是我要修改的提交

git commit -a --amend

但是当我这样做时

git review -v

它给了我

Running: git log --color=never --oneline HEAD^1..HEAD
Running: git remote
Running: git branch -a --color=never
Running: git branch --color=never
Running: git log HEAD^1..HEAD
Found topic 'fix-bug-1187277' from parsing changes.
Running: git rev-parse --show-toplevel
Running: git remote update gerrit
Fetching gerrit
Running: git rebase -i remotes/gerrit/master
Errors running git rebase -i remotes/gerrit/master
error: could not apply a062f76... Modify API ref for per-project-user quotas CRUD methods

When you have resolved this problem run "git rebase --continue".
If you would prefer to skip this patch, instead run "git rebase --skip".
To check out the original branch and stop rebasing run "git rebase --abort".
Could not apply a062f76... Modify API ref for per-project-user quotas CRUD methods

我不太明白我需要在这里做什么?我试过git rebase --abort git rebase --skip git rebase --continue了,没有解决。

4

1 回答 1

1

那里,那里,是一个git 冲突。您的提交a062f76 - Modify API ref for per-project-user quotas CRUD methods正在修改也remotes/gerrit/master已修改的行。

这个 stackoverflow 答案解释了解决 git 中的冲突。这是您获取知识的最佳链接,直截了当。但这是我的看法:

运行git diff以查看冲突是什么:您会找到来自HEAD( theirs ) 的行和来自您的提交 ( ours ) 的行。也许您会看到merged common ancestors,我觉得这令人困惑且无益。在您的代码中找到这些行并修复它们,以便最终状态是双方都希望代码执行的操作。请小心,因为您可能决定删除其他人打算在那里的行,或者混淆代码。就个人而言,我更喜欢找到并与他们的冲突线的作者交谈,以避免此类问题。

或者,在每个受影响的路径(读取:文件)上,您可以运行git checkout [--theirs|--ours] -- path/to/file将该路径移动到某个点,该点theirsHEAD' 对该路径的最后一次提交,并且ours是您的最后一次提交。前者说“我不想要我的代码”,后者说“我只想要我的代码,没有其他人”

一旦你快乐,git rebase --continue应该工作。如果发现另一个冲突,您可能必须再次重复这些步骤。

阅读材料

于 2014-01-01T04:27:03.717 回答