从提交中删除已提交的文件

bjo*_*asm 4 git github

我不小心提交了一些非常大的PDF文件,这些文件远远超过了GitHub的大小限制,所以当我后来推送时,我收到了一个错误,并且无法推送.现在,我想从提交中删除这些文件,而不是在本地丢失它们,这样我以后可以添加.pdf .gitignore并提交并推送我的其他更改.有谁知道我怎么做到这一点?

我不想撤消任何更改,或冒险这样做.

Jos*_*ush 8

首先备份这些文件

打开终端,cd到你的git目录和

git log
Run Code Online (Sandbox Code Playgroud)

你会看到这样的东西:

在此输入图像描述

然后在添加这些大型pdf文件之前复制提交哈希并运行此命令

git reset --soft <good commit hash>
Run Code Online (Sandbox Code Playgroud)

现在你可以推动你的本地变化


nal*_*d88 8

你可以试试这个:

git rm *.pdf
git commit --amend
Run Code Online (Sandbox Code Playgroud)

我认为这应该在本地修复你的提交然后你可以推送它.

编辑

PDF 复制到另一个位置,因为该rm命令将从git目录中删除它们.