减少.git文件夹大小

时间:2018-12-03 15:59:46

标签: git github

虽然有这样的question,但似乎并没有帮助。 我有repo。在仓库中,我有一个大约6MB的gif文件。碰巧发生了,所以我推送了这个GIF的不同版本,显然它们都存储在.git文件夹中,这使git文件夹的大小约为40MB。

在项目文件夹中,我尝试按照链接的问题中的建议运行:

   git repack -a -d --depth=250 --window=250

但是它并没有影响.git文件夹的大小(我是否必须推动才能看到减小的大小?)。 有什么办法可以减少.git文件夹的大小?

尝试git gc似乎也没有减小.git文件夹的大小。

1 个答案:

答案 0 :(得分:2)

hacky解决方案:

git push # ensure that you push all your last commits from all branches, and
         # take care about your stashes as well because we are going to delete
         # everything.
cd ..
rm -rf online-shop
git clone --depth 1 git@github.com:giorgi-m/online-shop.git

最后一行将仅复制一个提交历史记录来克隆存储库。

因此,您的.git文件夹会更轻。但是,您不会在计算机上拥有全部历史记录,这可能不是您想要的。

对于其他想要克隆您的应用程序的用户,您可以在README文件中告诉他们可以使用下一条命令来加快下载速度:

git clone --depth 1 git@github.com:giorgi-m/online-shop.git

另一种解决方案rewriting history是删除所有远程历史记录。您可以在this answer中查看有关此内容的更多信息:

  

删除.git文件夹可能会在git存储库中引起问题。如果要删除所有提交历史记录,但将代码保持在当前状态,则可以很安全地执行以下操作:

     

结帐

git checkout --orphan latest_branch
     

添加所有文件

git add -A
     

提交更改

git commit -am "commit message"
     

删除分支

git branch -D master
     

将当前分支重命名为master

git branch -m master
     

最后,强制更新您的存储库

git push -f origin master
     

PS:这不会保留您以前的提交历史记录