撤消Github上的提交?

时间:2013-04-08 06:40:53

标签: git github

我有本地存储库设置,包含2个分支mastersandbox。 我在沙箱上做了更改: 1.工作版本的变化, 2.更改以使版本在我的Windows机器上运行。

我单独提交了更改,先是1,然后是2。 然后我将master分支与sandbox分支合并。

现在因为我想忽略更改集2(更改为在Windows上工作),我创建了一个.gitignore,其中包含以下内容。

$ cat .gitignore

#changed for local
conn.php
.htaccess

然后我将master分支推送到GitHub上的远程主服务器,但现在查看最后2个提交,它们是本地机器开发环境的变化(2)。

而且,我使用.gitignore创建了notepad++,但它没有隐藏,看起来像文本文件。

所以,我想撤消github remote repository上的最后两次提交。

1 个答案:

答案 0 :(得分:1)

您可以使用reset --hard命令,但要注意它将清除工作副本中任何未提交的更改。找到您希望分支指向的提交的sha1(即最后2次提交之前),然后使用:

git reset --hard abcdef1234

其中abcdef1234是您要返回的提交的sha1。之后,您可能必须强制将更改推送到遥控器:

git push -f origin sandbox

或掌握,取决于您正在修改的分支