【发布时间】:2019-01-14 08:04:30
【问题描述】:
我提交并推送了一些意外的大文件。 git push 失败了,因为它们太大了。
所以我从本地 repo 目录中删除了它们,然后我创建了一个新的 git add/commit/push 并且 git 仍在尝试推送相同的大文件,所以它再次失败了。
我做了一个git status 并注意到文件仍在状态报告的"Changes not staged for commit" 下部,并以红色显示。我还注意到他们有指示说我应该"add/remove files to update what will be committed",所以我在文件上运行了"git rm filename"。结果,我做了一个新的 git status 并在 git status 报告的上部区域看到了相同的文件,现在是绿色的。
所以我以为我成功了,我做了一个新的git add/commit/push,但由于同样的原因再次失败:相同的文件试图被推送并且太大了。
所以我阅读了更多内容并尝试对所有文件执行git rm --cache filename,但此命令失败,说该文件不存在。
现在如果我执行 git status 我不再看到我删除的文件,但如果我推送它仍然会尝试推送。有人可以推荐如何解决这个问题吗?我真的不能失去我在当地的工作。
顺便说一句,我可以毫无问题地覆盖遥控器,因为我是唯一一个在使用它的人。
【问题讨论】:
-
您可以将
master分支重置到第一次提交大文件之前的位置。只要没有任何推送成功,这将起作用。 -
我遇到了同样的问题,这个建议奏效了,使用来自stackoverflow.com/questions/1628088/…的信息