我面临一个rebase问题,因为在添加了我解决冲突的文件之后,错误“没有变化 - 你忘了使用'git add'吗?”一旦我试图继续变装就会出现。有人知道吗?
感谢。
答案 0 :(得分:1)
当你通过选择"他们的"来解决冲突时会发生这种情况。文件的版本(或者如果您手动编辑文件并应用更改,最后文件与"他们的"版本相同)。
如果您解决了所有冲突后工作树没有变化,git commit
没有任何事情可做。 git rebase --continue
希望运行等效的git commit
来应用它正在处理的提交,但git commit
默认情况下不会创建空提交。
在这种情况下,您应该运行git rebase --skip
而不是git rebase --continue
。
rebase将跳过它正在处理的提交,因为从解决冲突的解决方案来看,它不会对代码进行任何更改。
答案 1 :(得分:1)
如果Git告诉你,那么你没有实际的提交更改。当您的冲突解决方案结束时,这可能会发生在rebase情况下,导致您当前正在进行的提交没有任何更改。这种情况的一个常见原因可能是更改已包含在基本提交中,从而使重新提交的提交变得多余。
然后,Git会警告你它没有任何提交/ rebase。在这种情况下,您可以决定提交空提交(git commit --allow-empty
),也可以简单地跳过此当前提交(因为它不包含任何内容)。那就做git rebase --skip
吧。
答案 2 :(得分:0)
得到了; @ poke的“git commit --allow-empty”让我朝着正确的方向前进:我在推送到远程主人之前使用了“commit --amend”,让其对团队的其他成员“透明”,而我需要一个全新的提交避免冲突。