-1

我有一个问题:我把一个大文件push到git时出错了,然后我git rm它,但是,git仓库已经包含了这个大文件,如果其他人想要git pull或git clone它,他必须下载这个大而无用的文件。如何解决这个问题呢?非常感谢你。

4

2 回答 2

2

您必须具有强制推送权限才能真正撤消您的最后一次提交:

这会杀死最后一次提交:

git reset --hard HEAD~

这会将其推送到服务器:

git push origin master --force
于 2013-06-08T08:14:02.703 回答
0

在您的情况下,您可以重写提交历史记录以完全删除有问题的提交,或者您可以将一个提交移回并强制推送您的本地分支,从而完全覆盖远程分支的历史记录。

如果在此期间没有其他人提交任何内容,则强制推送本地更改可能是最简单的方法。在此处查看如何执行该过程:

https://superuser.com/questions/35267/how-can-i-roll-back-1-commit

如果您更喜欢这个解决方案,在 git 手册中有关于如何重写提交历史的详细说明:

http://git-scm.com/book/ch6-4.html

于 2013-06-08T08:15:40.663 回答