在提交之前返回并推送更改

时间:2015-06-22 23:54:58

标签: git

在我的本地环境中,我做了几处更改,然后:

$ git log --oneline
2aa8998 Changes 02
5131bfe Changes 01
$ git commit -am "Commit 03"
$ git push

$ git log --oneline
9ca6c56 Changes 03
2aa8998 Changes 02
5131bfe Changes 01

但我注意到我犯了一个错误,因为我回到提交2aa8998之前" git commit -am"提交03"没有提交的更改?

1 个答案:

答案 0 :(得分:1)

push之外,reset就是为此做的。

$ git reset HEAD^

会将您当前的本地头(master,也许?)移动到历史记录中一步,同时保持您的本地文件不受影响。

然后对于push(你应该在他的评论中听@jeremytwfortune),你可以(但不应该)通过强制push将其从遥控器中删除。

git push无效,但git push -f会有效。 -f代表强制,它会冒着丢失数据的风险。