我们经常发布文档更新,此页面的翻译可能仍在进行中。有关最新信息,请访问英文文档。如果此页面上的翻译有问题,请告诉我们
文章版本: Enterprise Server 2.17

从仓库的历史记录中删除文件

要从仓库中删除大文件,必须将其从本地仓库和 您的 GitHub Enterprise Server 实例 中完全删除。

警告:这些步骤将从您的计算机和 您的 GitHub Enterprise Server 实例 上的仓库中永久删除文件。 如果文件很重要,请在仓库外部的目录中创建本地备份副本。

如果在之前的提交中添加了文件,则需要将其从仓库历史记录中删除。 您可以使用 BFG Repo-Cleaner 或 git filter-branch 命令从仓库历史记录中删除文件。 更多信息请参阅“从仓库中删除敏感数据”。

删除在最近未推送的提交中添加的文件

如果文件使用最近的提交添加,而您尚未推送到 您的 GitHub Enterprise Server 实例,您可以删除文件并修改提交:

  1. 打开终端终端Git Bash终端

  2. 将当前工作目录更改为您的本地仓库。

  3. 要删除文件,请输入 git rm --cached

    $ git rm --cached giant_file
    # 暂存我们的巨型文件待删除,但将其留在磁盘上
  4. 使用 --amend -CHEAD 提交此更改:

    $ git commit --amend -CHEAD
    # 使用您的更改修改以前的提交
    # 只需使新提交无效,因为您还需要
    # 从未推送的历史记录中删除该文件
  5. 将提交推送到 您的 GitHub Enterprise Server 实例:

    $ git push
    # 推送我们重新编写的、较小的提交

问问别人

找不到要找的内容?

联系我们