我想在一个我要撤消的分支上提交。
问题是之后在分支上有提交。如果我还原那个提交,它还会保持原样吗?
答案 0 :(得分:7)
git revert
将创建一个新提交(在所有现有提交之上),这是您想要还原的提交的反转。因此,您不会改变历史记录,只有您的更改才会被撤消(除非之后有人编辑了相同的行,然后您需要修复冲突)。 这是推荐非敏感更改的推荐方式(敏感更改包括,例如,无意中将凭据提交到源代码管理)
git rebase -i
将允许您更改历史记录,以便您的提交从不存在于分支上。这将需要git push --force
,通常会让您的同事对您不满意。只有在您知道自己正在做什么的情况下才能使用它。