关于github:忽略Git Commit

Ignore Git Commit

本问题已经有最佳答案,请猛点这里访问。

我正在为当前项目处理git repo,在我的项目中有一些abc.php文件。

我的分公司正在发展

目前我的本地和远程分支代码是一样的,现在我已经做了一些abc.php中的更改。需要移动(远程分支)。

所以我已经按照下面的方式做了。

git add -A->添加文件

git commit -m"changes done in abc.php"->文件已提交

然后我必须使用git push origin develop->将更改推送到远程分支

但现在我意识到,我不想要我最近的承诺……是否可以忽略我最近的提交??请帮我解决

事先谢谢!…


如果你犯了垃圾但没有被推,

1
git reset --soft HEAD~1

HEAD~1是头前承诺的简写。或者,您可以参考要重置为的哈希的SHA-1。--Soft选项将删除提交,但它将保留所有更改的文件"要提交的更改",正如Git状态所说。

如果您想消除工作树中对被跟踪文件的任何更改,因为在头使用前提交——是硬的。现在,如果你已经推了,有人拉了,这通常是我的情况,你不能使用git重置。但是你可以做一个Git还原,

1
git revert HEAD

这将创建一个新的提交,该提交将反转意外提交引入的所有内容。


取消提交就是应用其diff的倒数!

我们可以将取消提交的差异重定向到命令补丁--reverse

1
git diff HEAD^ | patch --reverse

为了更简单,有git revert

例如,要取消最后三次提交:

1
git revert HEAD~3..HEAD

或者取消特定的提交::

1
git revert 444b1cff

然后您可以干净地推送服务器上获得的提交。任何基于已取消提交的工作的合作者都必须在正确的时间管理冲突。


尝试:

git reset HEAD~1

江户十一〔一〕号