文档章节

改写历史,永久删除git库的物理文件

JFinal
 JFinal
发布于 2014/04/02 22:57
字数 249
阅读 7113
收藏 25

     发布在 github 上的项目 jfinal 最初没有使用maven进行管理,所以 WEB-INF/lib 留存有 jar 文件,使用 maven进行库文件管理以后这些 jar 不再有用,故删之。

    但即便是删掉,库中还是会存有这些文件的物理文件,占有一定的存储空间,从而 git clone 下来时的总文件大小达到 29M之多,git osc 速度算快的,但 github.com简直就无法忍受了,所以通过 git help filter-branch 找到改变历史的办法,具体操作如下:

git clone git@github.com:jfinal/jfinal.git
git filter-branch --tree-filter 'rm -f WebRoot/WEB-INF/lib/*.jar' --tag-name-filter cat -- --all
git push origin --tags --force
git push origin --all --force

   删完后再 git clone 整个文件大小缩减到 940K,git clone 秒秒钟搞定,即便是 github 也是极速,打完收工

JFinal官方网址:http://www.jfinal.com

© 著作权归作者所有

共有 人打赏支持
JFinal

JFinal

粉丝 3963
博文 4
码字总数 2275
作品 3
海淀
CTO(技术副总裁)
私信 提问
加载中

评论(6)

啦啦啦拉拉
啦啦啦拉拉
反正我就知道推送node的项目的时候都忽略node_module
Jason_hu
Jason_hu
有必要。
JFinal
JFinal

引用来自“再踏”的评论

确实有这种必要,不过这样感觉git的意义一小半都没了

一般不会这么用,这样使用的场景是当你历史上 push 了一个非常大的文件,后来这文件废弃,但始终会影响 clone 的速度,另一个场景是历史上可能 push 了某些需要保密的敏感文件需要彻底干掉

惊鸟
惊鸟
确实有这种必要,不过这样感觉git的意义一小半都没了
k
killerg
1024
如梦技术
如梦技术
1024个赞
从git中永久删除文件以节省空间

在使用版本管理工具的过程中我们会碰到这样的问题:不小心把一个不该加入版本管理的文件加进去了,有时候这个文件很大,也许我们整个版本库才几百 K,但加进去这个没用的文件却有好几百M,我可...

妈妈说名字长长长能引来美女123
2016/12/08
13
0
如何控制 Git 库的膨胀? GC 一步搞定!

相信每个公司都有自己的官网。小明公司也不例外,不过小明却发现公司的“猿”哥哥将许多视频放在了代码仓库里,导致原本只有代码的仓库从早期的几十MB,飙升至 1G以上,变得无比臃肿(或者是慢...

码云Gitee
09/13
0
0
git学习笔记——查看git历史记录

1.查看Git日志: 命令:git log 默认不加参数,git日志会按照最新的日期从上往下显示 参数:-p 显示版本间的代码差异 -数字 显示部分的提交 -哈希值 显示指定的版本 2.指定查找范围: --sinc...

若晨辰
2013/08/15
0
0
svn 迁移到git

1.物理环境 Git–server Centos5.8 192.168.1.245Svn–server Centos5.8 192.168.1.108 2.建立SVN用户到git用户的映射文件 建立SVN用户到git用户的映射文件,文件格式如下: cat /tmp/useri...

linuxprobe16
2016/11/24
16
0
Git+Gerrit如何永久删除历史文件(大文件/私密文件)

一、前言 前几天同事在拉取一个项目的Git仓库时,发现项目拉取速度非常慢,半个钟都无法拉取下来,并且发现一直卡在了99%的进度上。 开始时以为是Git网络出问题了,检查了其它仓库却都可以正...

开发的猫
03/21
0
0

没有更多内容

加载失败,请刷新页面

加载更多

高并发编程:解析HashMap

底层实现原理 在JDK1.8以前版本中,HashMap的实现是数组+链表,它的缺点是即使哈希函数选择的再好,也很难达到元素百分百均匀分布,而且当HashMap中有大量元素都存到同一个桶中时,这个桶会有...

小刀爱编程
13分钟前
0
0
程序员请不要假装很努力,因为结果不会陪你演戏

前言: 我一直相信这样一句话:真正的危机,来源于在正确的时间做不正确的事。没有在正确的时间,为下一步做出积累,这才是危机的根源。 比如,当你迈过了30岁这个坎,你的能力还局限于程序的...

Java干货分享
19分钟前
1
0
Fio随机读IOPS测试值可能偏大的原因分析

问题描述: 在使用fio进行虚拟机磁盘(Ceph的RBD,格式化为ext4文件系统)的IOPS测试时,发现randread比预估值高许多; 在使用相同参数进行randwrite测试之后,再进行randread时会出现此现象...

LastRitter
22分钟前
0
0
JavaScript引用类型Object常见用法实例分析

1、JavaScript数据类型 (1)基本类型 5种基本类型:Undefined、Null、Boolean、Number、String (2)引用类型 5种引用类型:Object、Array、Date、RepExp、Function (3)基本类型与引用类型的异同...

peakedness丶
29分钟前
0
0
教你理清SpringBoot与SpringMVC的关系

spring boot就是一个大框架里面包含了许许多多的东西,其中spring就是最核心的内容之一,当然就包含spring mvc。spring mvc 是只是spring 处理web层请求的一个模块。因此他们的关系大概就是这...

别打我会飞
34分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部