我的Git仓库历史记录长这样:
* (topic2) commit_11
* (topic1) commit_10
* commit_9
* commit_8
* (HEAD, master) commit_7
* commit_6
* commit_5
* commit_4 <- I wanted to edit this commit.
* commit_3
所以我就这样做了。
git rebase -i commit_3
对于编辑器中的 commit_4,将 pick
替换为 edit
。
我纠正了一些变量名字中的拼写错误,然后
git add .
git commit --amend
(rename commit)
git rebase --continue
现在的历史看起来像这样:
* (HEAD, master) commit_7.1
* commit_6.1
* commit_5.1
* commit_4.1 <- Edited commit.
| * (topic2) commit_11
| * (topic1) commit_10
| * commit_9
| * commit_8
| * commit_7
| * commit_6
| * commit_5
| * commit_4 <- Original commit.
|/
* commit_3
我希望我的历史记录和以前一样干净利落。我尝试使用之前成功多次的方法。
git checkout topic1
git rebase master
在应用第一个补丁时,它最终会出现冲突。我手动解决了这些冲突。但是当我尝试git rebase --continue
时,它告诉我“没有要提交的内容”。
如何处理这个问题以及为什么会出现这种情况?