Bitbucket 使用 BFG 减少回购大小

Bitbucket reduce repo size with BFG

由于一些静态资产(视频、图像),我的团队在 Bitbucket 上的存储库为 1.34GB

我已按照 BFG Repo Cleaner

的说明进行操作

我的存储库现在是 2.37GB,超过了我们的 2GB 配额,现在是只读的。

我 运行 的命令与 BFG 主页上的几乎相同,

  1. git clone --mirror git://example.com/some-big-repo.git
  2. java -jar bfg-1.13.0.jar --strip-blobs-bigger-than 100M some-big-repo.git
  3. cd 大点-repo.git
  4. git reflog expire --expire=now --all && git gc --p运行e=now --aggressive
  5. git推

在我 运行 这个命令之后,我的存储库增长到 2.37GB 标记。但是,如果我 运行 git count-objects -v 我的尺码包现在是:size-pack: 1073518 与之前相反 size-pack: 1213524。所以理论上我的回购协议更小。

我不知道,因为这是托管在 Bitbucket 云中的在服务器上需要 "them" 到 运行 git gc

有这个必要吗?无论如何我可以用 git push 撤消我的所有更改吗?我有包含所有更改的 some-big-repo.git.bfg-report 报告,但我不知道如何使用该报告来恢复我的更改。

注意 Bitbucket docs on Garbage collecting dead data 说:

After you push your changes, contact Support to run a git gc on the server for you. This is git garbage collection which runs housekeeping tasks on the repository to reflect the change in the size.

...你问过他们 运行 'git gc' 了吗?

要解决问题的第二部分,您可以使用创建的备份来撤消更改。 https://rtyley.github.io/bfg-repo-cleaner/#usage