我正在使用Git,我已经提交了几个文件
git commit -a
Run Code Online (Sandbox Code Playgroud)
后来,我发现错误地将一个文件添加到了提交中.
如何从上次提交中删除文件?
偶尔我会把一个DVD-rip放到一个网站项目中,然后不小心git commit -a -m ...,然后,zap,回购邮件被2.2演出臃肿.下次我做了一些编辑,删除了视频文件,并提交了所有内容,但是历史记录中的压缩文件仍然存储在存储库中.
我知道我可以从那些提交开始分支并将一个分支重新绑定到另一个分支.但是我应该怎么做才能将2个提交合并在一起,以便大文件没有在历史记录中显示并在垃圾收集过程中被清除?
我整天都被困在这个问题上,在这里寻找答案:( ...
上下文
我在一个项目上独自工作,直到现在我才使用github来保存我的工作,而不是在我的电脑上.不幸的是,我在本地存储库中添加了一个非常大的文件:300mb(超过Github的限制).
我做了什么
我将尝试记录我所做的事情:
我(愚蠢地)将所有内容添加到索引中:
git add *
Run Code Online (Sandbox Code Playgroud)我承诺改变:
git commit -m "Blablabla"
Run Code Online (Sandbox Code Playgroud)我试图推动原始大师
git push origin master
Run Code Online (Sandbox Code Playgroud)
花了一段时间,所以我只是按CTRL + C,并重复步骤2和3四次,直到我意识到文件太大而无法推送到github.
我犯了一个很糟糕的错误就是删除了我的大文件(我不记得我是做了一个git rm还是一个简单的rm)
我按照说明(https://help.github.com/articles/remove-sensitive-data)
当我尝试git filter分支时,我收到以下错误:"无法重写分支:您有未分阶段的更改."
提前致谢 !