Git 如何停止将删除的文件推送到远程回购?
我提交了一些文件,并试图将它们推送到远程存储库。 然而,我在列表中发现了一个大的视频文件并终止了推送。 然后我尝试从列表中删除该文件并再次按下Git 如何停止将删除的文件推送到远程回购?,git,github,Git,Github,我提交了一些文件,并试图将它们推送到远程存储库。 然而,我在列表中发现了一个大的视频文件并终止了推送。 然后我尝试从列表中删除该文件并再次按下 $git commit -m "comments" -a $git push origin my_branch ... # I found mp4 file here and terminated push $git rm --cached path/to/mp4 $git commit -m "comments" -a $git push origin
$git commit -m "comments" -a
$git push origin my_branch
... # I found mp4 file here and terminated push
$git rm --cached path/to/mp4
$git commit -m "comments" -a
$git push origin my_branch
问题git仍然试图将mp4文件推送到repo 问题 如何避免删除的文件推送到远程回购 PS
我还尝试了
git rm path/to/mp4
,该文件已从我的目录中删除,但git仍尝试通过这些命令将该文件推送到repo,看起来视频文件仍在提交历史记录中
假设您没有进行其他提交,请尝试以下操作。如果你只是稍微调整一下
尝试还原到上一次提交
git reset --soft HEAD~1
然后检查git状态,看看是否看到该文件
如果你愿意的话。然后移除它,并用
git commit -c ORIG_HEAD
如果历史大于一个提交,并且MP4大文件已在旧提交中被版本化,则可以考虑用“
”清理您的回购版本的历史记录。- (as)
- 或者
要“回滚”,只需在当前本地repo的本地克隆上尝试这些操作(即第二个本地repo,第一个本地repo的克隆)。如果最终结果不好,您可以在第一次(未触及的)回购中恢复。谢谢,在我尝试解决方案之前,我是否可以知道解决方案将回滚我的更改?重置--在您提交之前,soft不应回滚任何内容。它会将您返回到提交之前的状态。提交中的所有更改都将显示在暂存区域中。如果您不确定,只需在另一个文件夹中初始化git repo并进行实验。或者创建一个新分支并在那里尝试该命令。即使出了问题,reflog也是您的朋友使用git-rm执行git签出删除文件并再次推送文件。这将确保删除该文件。
bfg --strip-blobs-bigger-than 1M my-repo.git