caoyang2002

删除错误提交到GitHub仓库中的文件

· simons ·
编程 git

如果你需要删除错误提交到GitHub仓库中的文件,你可以通过以下步骤来创建一个新的提交来撤销之前的更改:

  1. 在本地仓库中删除文件: 首先,在你的本地仓库中删除该文件:

    git rm --cached <file>

    这里 <file> 是你想要从仓库中删除的文件名。--cached 参数意味着仅从Git的跟踪中删除文件,而不删除工作目录中的文件。

  2. 提交这个更改: 然后,提交这个更改到你的本地仓库:

    git commit -m "Remove mistakenly added file"
  3. 推送到远程仓库: 最后,将这个更改推送到GitHub上的远程仓库:

    git push origin <branch>

    其中 <branch> 是你想要推送更改的分支名,比如 mainmaster

这样,你就创建了一个新的提交,它撤销了错误提交的文件。这个文件将从GitHub仓库中删除。

如果你想要完全从仓库的提交历史中删除该文件(而不是仅仅创建一个新的提交来删除它),你可以使用 git filter-branch 或 BFG Repo-Cleaner 等工具来重写历史。但请注意,这些方法会改变仓库的历史,如果你已经推送了原始提交,这可能会给其他协作者带来问题。在这种情况下,最好的做法是联系仓库管理员来帮助解决。

警告:使用 git filter-branch 或其他历史修改工具应该非常小心,因为它们可能会破坏公共仓库的历史,使得其他人难以与你的仓库同步。在尝试这些高级操作之前,请确保你完全理解它们的后果,并且已经备份了你的仓库。