热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

从git删除大文件

这是我上一篇文章

这是我上一篇文章here的后续内容。
我正在尝试删除我提交给git的大文件。根据上一篇文章中的建议,我尝试了

git filter-branch --force --index-filter "git rm --cached --ignore-unmatch folder/Unconfirmed 866711.crdownload" --prune-empty --tag-name-filter cat -- --all

按照上述命令,我尝试推送所有更改

git push origin --force --all

但是,在使用filter-branch之前,我得到了与显示的相同的错误

remote: error: File folder/Unconfirmed 866711.crdownload is 486.30 MB; this exceeds GitHub's file size limit of 100.00 MB

或者,我也尝试过

git add --all
git filter-branch -f --index-filter "git rm --cached --ignore-unmatch folder/Unconfirmed 866711.crdownload" HEAD

但是,我得到以下内容

Cannot rewrite branches: Your index contains uncommitted changes.

我不确定是否错过任何命令或标志。有什么建议吗?




  

无法重写分支:您的索引包含未提交的更改。

您的工作目录中有未提交的更改,即为提交而进行的更改(请检查git status输出)。如果愿意,可以提交这些更改,或者在执行filter-branch命令后使用stash和apply保留未提交的更改。

如果您不想进行未提交的更改,则可以执行硬重置。

git reset --hard HEAD



正如下面的评论中提到的@torek和GitHub帮助page所述,不建议在stash

之前使用filter-branch

  

警告:如果在存储更改后运行git filter-branch,则您
  将无法使用其他存储命令检索您的更改。
  在运行git filter-branch之前,我们建议先取消所有更改
  你做了。

因此,如果要保留未提交的更改,请提交更改。然后继续执行filter-branch命令。



您的filter-branch命令缺少单引号(以考虑要删除的文件名中的空格)

git filter-branch -f --index-filter "git rm --cached --ignore-unmatch 'folder/Unconfirmed 866711.crdownload'" HEAD


推荐阅读
  • 如何在vscode中使用GitLab我同广大码友们一样,好不容易赶上了个节假日,回到家一顿安排,可屁股还没坐热就接到线上紧急BUG需要修复 ... [详细]
  • 修正我的GitHub commit 数据
    早晨上班,滴滴搭车里,我在掘金这个帖子看到大家晒自己的Github活跃记录,我也晒了下自己的记录。不过太少了。有遗漏的commits状况这也让我知道,自己觉得自己很忙的,实际上提交 ... [详细]
  • 本文详细介绍了git常用命令及其操作方法,包括查看、添加、提交、删除、找回等操作,以及如何重置修改文件、抛弃工作区修改、将工作文件提交到本地暂存区、从版本库中删除文件等。同时还介绍了如何从暂存区恢复到工作文件、恢复最近一次提交过的状态,以及如何合并多个操作等。 ... [详细]
  • 初始化初始化本地空版本库,仓库,英文名repositorymkdirtest&&cdtestgitinit克隆项目到本地gitclone远程同 ... [详细]
  • 先记住几个专用名词,如下:Workspace:工作区IndexStage:暂存区Repository:仓库区(或本地仓库)Remote:远程仓库一、新建代码库#在当前目录新建一个G ... [详细]
  • Git GitHub多人协作
    在学校做一个小项目需要多人协作,就用到了gitHub,百度了一下多数写得乱七八糟或者支离破碎,于是总结了一下自己的步骤如下,第一次使用GitHUb,哪里不对望大神指出一.前期准备: ... [详细]
  • 双十一在家学用 Git
    对于所有的开发者来说,掌握一门代码版本控制系统都是必须的,无论是自己做项目,团队合作,工作中的合作,都离不开版 ... [详细]
  • 第一种方法gitarchive-oupdate.zip$(gitdiffnew-versionold-version--name-only)此方法如果文件有删除,则 ... [详细]
  • 前言本篇为大家总结社区多人合作常见的场景和对应的git操作命令。本篇非新手教程,阅读本篇前需具备Git基础知识。Git入门教程请参考https://www ... [详细]
  • 记一次git的版本回退
    背景本地有个项目已经修改了很久(是自己的小项目不是公司的),文件挺多的,还有大量的log文件。一些资源文件是中文名,工作区修改后使用了命令gitadd.本来在.gitignore文 ... [详细]
  • 注意:尽量不要直接gitpull,因为gitpull会隐藏一些中间细节,它会直接将远程主机的最新内容合并到当前分支,建议使用 ... [详细]
  • 使用GitHubDesktop上传本地的项目文件注册账号下载安装啥的就都省略了,直接进入正题点击左上角的“+”号,选择“Add”项,点击“choose ... [详细]
  • 准备工作参考我的另一篇利用githubactions自动部署gradle构建的springboot项目打包的war包到tomcat服务器,这里直接上配置, ... [详细]
  • (译)React hooks:它不是一种魔法,只是一个数组——运用图表揭秘提案划定规矩
    原文地点:https:medium.com@ryardley…译文:染陌(Github)译文地点:https:github.comanswershutoBlog转载请有名出处我是一 ... [详细]
  • GitHub Desktop 拉取 GitHub上 Tag 版本代码
    一直在使用GitHubDesktop图形化git管理工具,统一项目框架版本时需要切换到ThinkPHPTag分支版本,步骤如下,1,先在GitHub中找到需要的版本,点进去 ... [详细]
author-avatar
阮琳芷信玲俊岳
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有