代码之家  ›  专栏  ›  技术社区  ›  Giorgi Moniava

减少.git文件夹大小

  •  2
  • Giorgi Moniava  · 技术社区  · 7 年前

    有这样的 question 虽然是旧的,但似乎没用。 我有 repo . 在回购协议中,我有一个大约6MB的gif文件。它发生了,所以我推送了这个GIF的不同版本,显然它们都存储在.git文件夹中,这使得git文件夹的大小大约为40MB。

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

    但是它并没有影响.git文件夹的大小(我是否必须按下按钮才能看到大小减小?)。

    也在努力 git gc

    1 回复  |  直到 7 年前
        1
  •  10
  •   Ulysse BN    6 年前

    黑客解决方案:

    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:这不会保留您以前的提交历史记录