codecamp

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

要从仓库中删除大文件,必须将其从本地仓库和 GitHub 中完全删除。

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

删除之前提交中添加的文件

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

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

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

  1. 打开 Git Bash。

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

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

   $ git rm --cached giant_file
   # Stage our giant file for removal, but leave it on disk

  1. 使用 --amend -CHEAD 提交此更改:

   $ git commit --amend -CHEAD
   # Amend the previous commit with your change
   # Simply making a new commit won't work, as you need
   # to remove the file from the unpushed history as well

  1. 将提交推送到 GitHub:

   $ git push
   # Push our rewritten, smaller commit
GitHub 大文件的条件
GitHub 分发大型二进制文件
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

GitHub 身份验证

在 GitHub 上管理订阅和通知

在 GitHub 上管理活动的订阅

GitHub 组织和团队

GitHub 管理对组织仓库的 Git 访问

GitHub 计费和付款

GitHub 使用议题和拉取请求进行协作

GitHub 在具有代码质量功能的仓库上进行协作

管理在 GitHub 上的工作

GitHub 建立强大的社区

GitHub 管理仓库

GitHub 自定义 GitHub 工作流程

在 GitHub Marketplace 中购买并安装应用程序

通过 GitHub Jobs 寻找人才

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }