0

我的存储库中的一个巨大文件夹已经填满了我的 LFS。按照此处的说明,我希望从远程存储库中删除该文件夹,然后重写历史记录以将其从所有先前的提交中删除。这应该在我的 LFS 中释放大量空间,但不是。我错过了什么?

假设存储库是repo并且有问题的文件夹是repo/unwantedFolder.

我做了以下步骤:

  1. 删除了不需要的文件夹并重新提交:

    $ git rm -r --cached unwantedFolder/
    $ git commit -a -m 'Drops folder'
    $ git push origin
    
  2. 镜像克隆 repo:

    $ git clone --mirror https://github.com/emagar/repo.git
    
  3. 重写历史:

    $ java -jar bfg.jar --delete-folders unwantedFolder repo.git/
    
  4. 移入操纵的克隆回购:$ cd repo.git/
  5. 使用 git gc 命令:

    $ git reflog expire --expire=now --all && git gc --prune=now --aggressive
    
  6. 推送干净的存储库:$ git push origin
  7. 移回原始存储库:$ cd repo/
  8. 从 github 拉取:$ git pull origin master

虽然一切似乎都运行良好,但当我检查 github 中的旧提交时,不需要的文件夹 / 仍然出现在那里!

我错过了什么?

4

0 回答 0