在不撤消后续提交的情况下还原提交

时间:2018-01-08 08:04:31

标签: git

我想在一个我要撤消的分支上提交。

问题是之后在分支上有提交。如果我还原那个提交,它还会保持原样吗?

1 个答案:

答案 0 :(得分:7)

git revert将创建一个新提交(在所有现有提交之上),这是您想要还原的提交的反转。因此,您不会改变历史记录,只有您的更改才会被撤消(除非之后有人编辑了相同的行,然后您需要修复冲突)。 这是推荐非敏感更改的推荐方式(敏感更改包括,例如,无意中将凭据提交到源代码管理)

git rebase -i将允许您更改历史记录,以便您的提交从不存在于分支上。这将需要git push --force,通常会让您的同事对您不满意。只有在您知道自己正在做什么的情况下才能使用它。