从github上的推送代码中删除文件

时间:2017-01-30 20:49:48

标签: git github open-source

我已经提交并将我的更改推送到我的项目的分叉副本。此外,我还向存储库提出了一个pull请求,我最初将该项目分叉。现在我必须删除我提交的文件。我该怎么办?

1 个答案:

答案 0 :(得分:0)

如果文件只存在于最后一次提交中,您只需删除它,修改提交并使用 func(); 重写github上的提交:

git push --force

如果您想删除多个先前提交的文件,请查看此主题的github guide

特别是,您可以使用BFG cleaner删除回购中的文件,包括所有提交历史记录:

git rm file-to-delete

git commit --amend

git push --force

另一个不需要在git上安装任何内容的替代方法是bfg --delete-files file-to-be-deleted 命令:

git filter-branch

在本地进行更改后,您必须使用git filter-branch --force --index-filter 'git rm --cached --ignore-unmatch file-to-be-deleted' --prune-empty --tag-name-filter cat -- --all 将它们推送到github。

在任何情况下,您都应该将文件添加到git push --force,以便将来不会再次意外提交。