繁体   English   中英

git删除服务器上的提交

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM