猿问

请问遇到这样的问题时大家会怎么处理来舍弃无用的历史和文件?

一个 repo 里有 .jar 之类文件, 从 Github 下载 tag 里的 .zip 文件大小有 8M,
然后我用 filter-branch --tree-filter 删除了相关目录, 但大小没减多少..
查看了一下, 整个 repo 特别是 .git/objects/ 文件太大, 总共 48M,
于是网上搜 git gc 命令的参数尝试性地弄了几个, 到了 37M, 主要是 .git/objects/pack/ 36M.
作为一个 JS 前端模块还是太大了. 其实太早的 commit 可以丢弃的.
我想删除重建 .git 用来打包是可以的,

斯蒂芬大帝
浏览 193回答 3
3回答

白衣非少年

如果是java建立的web项目,加上 ssh 什么的加上,也不算太大啦。或者你可以考虑把公共的 jar 都剥离出去,不要直接放在项目中。

幕布斯7119047

clone的时候,可以指定深度,如下,为1即表示只克隆最近一次commit.git clone git://xxoo --depth 1

蝴蝶不菲

.git 下是你的本地仓库,记录的是全部的 git commit 历史信息,clone 的时候指定 depth 可以不下载过多的历史 commit 信息。不过你的疑问似乎是发布的时候如何处理,简单,发布的时候删掉 .git 目录即可。
随时随地看视频慕课网APP
我要回答