更新推送到gerrit后如何回滚到以前的版本?

时间:2013-09-10 08:47:36

标签: git gerrit

我上传并提交了三个文件,然后我将其推送到gerrit进行审核,但其中一个文件需要回滚到更新前的旧版本,如何回滚?

2 个答案:

答案 0 :(得分:0)

git checkout HEAD~

git commit

最新的壁球使用git rebase --interactive

提交

OR

git reset HEAD~

commit - #确保您保留相同的changeID。

答案 1 :(得分:0)

如果您没有推动,则可以使用git rebase --interactive。您只需编辑您所做的提交,并包含旧版本的文件而不是新版本。

然而,你已经推了。 rebase会重写历史记录,其他开发人员可能会根据您的提交完成工作。因此,你不能安全地变基。

相反,您需要创建一个新的提交,将文件更改回旧文件。 为此,请键入:

git checkout <the commit with the correct file> <the file>
git add <the file>
git commit

第一个命令用较旧(正确)的文件替换该文件。之后,你只需提交。然后,您可以将新提交推送到gerrit。

当然,gerrit和git中仍然可以使用错误的文件(通过检查错误的提交),但是你无法阻止它发生。你已经推了。