Ten*_*igh 5 git push bitbucket
不知何故,我有一个非常大的本地存储库,因为我不小心添加了超过 2 GB 的文件,并且不假思索地试图推动它。我中止了,删除了文件并重新提交,但是当我尝试git push origin master使用 Bitbucket 时,它失败了:
fatal: The remote end hung up unexpectedly
Run Code Online (Sandbox Code Playgroud)
我的 .git 文件仍然很大,尽管我早就删除了不需要的文件。由于推送超过 2 GB,Bitbucket 说我需要将其设置http.postBuffer为更高的数字。我已经做过很多次了,但在尝试了大约 15 次之后,我想重新开始。
git status 给我这个:
On branch master
Your branch is ahead of 'origin/master' by 4 commits.
(use "git push" to publish your local commits)
Run Code Online (Sandbox Code Playgroud)
但是由于推送永远不起作用,我该如何解决?最坏的情况是我可以炸毁 repo 并重建它,但我想知道是否有办法重置推送,因为它一直失败。
当有问题的提交是最近的提交时,weigreen\xe2\x80\x99s 答案将有所帮助,在其他情况下,您\xe2\x80\x99ll 需要重写历史记录。我更喜欢交互式 rebase。
\n\ngit rebase -i <some-commit-before-the-problematic-one>\nRun Code Online (Sandbox Code Playgroud)\n\n它将显示提交列表以及对pick它们的默认操作。如果您想保留有问题的提交的一部分,请更改pick为该edit行。如果您想完全删除它,只需删除该行即可。如果您选择编辑该提交,Git 会将工作树置于您\xe2\x80\x99刚刚完成有问题的提交时的状态。更改您需要的内容并修改提交:
git commit --amend\nRun Code Online (Sandbox Code Playgroud)\n\n之后,让 Git 完成 rebase 使用
\n\ngit rebase --continue\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
8856 次 |
| 最近记录: |