如何记得1周前推送的提交?

时间:2018-12-30 13:25:08

标签: git

我的本​​地提交历史记录是:

commit 5
commit 4
commit 3
commit 2
commit 1

远程gitlab服务器提交历史为:

commit 3
commit 2
commit 1

commit 2于一周前被推送到gitlab服务器。
现在,我知道commit 2不应该提交,因为内容都是Apache tmp文件。
如何删除或取消commit 2
我是git新手,谢谢!!

2 个答案:

答案 0 :(得分:0)

最安全的做法可能是git revert第二次提交。首先在您的分支机构上输入git log,它应该显示如下内容:

f83j2l8f commit 5 comment
439gm93f commit 4 comment
lsm382fs commit 3 comment
lm93nd82 commit 2 comment
9rnj1iu3 commit 1 comment

找到第二个提交的SHA-1哈希,在我上面给出的示例中为lm93nd82。 SHA-1哈希通常看起来像一些非常长的难以理解的字符串。现在您要做的就是这个:

git revert lm93nd82

这将在分支的顶部创建一个 new 提交,此功能将撤消/擦除第二次提交的引入。现在,像往常一样推动分支:

git push origin your_branch

现在,远程服务器应该在HEAD处显示一个新的提交,并且第二个提交引入的更改也将消失。

答案 1 :(得分:0)

  

有多种处理方法:

方法1:提取最新代码并删除提交2的差异,如果存在冲突,可以在GitHub上的提交2中找到差异(简便方法)。

方法2:还原提交直到提交2减1,并选择其他提交更改集(有点困难取决于提交2之后的更改集)