[英]git remove commit on the server
我在git中管理的项目犯了一些错误:
在这里阅读一些指南和一些帖子,我做了以下命令:
git reset --hard a77ec5f
comaint a77ec5f是最后的“良好”提交
之后,这些文件就在我的本地副本中,但是如果我执行git status
:
$ git status
# On branch dev
# Your branch is behind 'origin/dev' by 4 commits, and can be fast-forwarded.
#
nothing to commit (working directory clean)
现在,如何告诉服务器我要删除的4个提交要删除? 谢谢
如果您的存储库已由其他人同步,则除非您确定没有人拉出不良更改,否则您不应推送任何历史记录更改。
要重写历史记录(危险),请在本地执行空提交( git commit --allow-empty
),以使HEAD与远程HEAD分开,然后push --force
重写服务器的历史记录。
您不应删除服务器上的提交,而应还原它们
您可以还原不需要的提交。
git revert commit
这将创建另一个提交,以还原不需要的更改。 还原不需要的提交后,应推送到原点。
您也可以寻找--no-commit
参数来还原。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.