BFG Repo-Cleaner 指出我的 github 存储库不是有效的 Git 存储库

BFG Repo-Cleaner states my github repo is not a valid Git repository

这是 的后续问题。

我已尝试从本地 git 历史记录中删除大文件,但工具 (BFG Repo-Cleaner) 建议 in this question 指出我的私人 GitHub 存储库不是一个有效的 git 存储库。

我使用的命令是:

java -jar bfg-1.12.12.jar  --strip-blobs-bigger-than 99M https://github.com/name/repo.git

最终导致:

Aborting : https://github.com/name/repo.git is not a valid Git repository.

我找不到解决办法。该工具与私有或 https GitHub 存储库不兼容吗? 我如何使用替代工具 git-filter-branch 从我的本地 git 历史记录中删除所有大于 99MB 的文件?

该项目大约有 6MB 大,到目前为止只有大约 50 次提交,没有其他人在处理它。

指向本地副本,而不是远程。

您已将 GitHub URL 提供给该工具,但他们网站上的 usage 部分说您应该从存储库的本地副本开始工作:

Usage

First clone a fresh copy of your repo, using the --mirror flag:

$ git clone --mirror git://example.com/some-big-repo.git

This is a bare repo, which means your normal files won't be visible, but it is a full copy of the Git database of your repository, and at this point you should make a backup of it to ensure you don't lose anything.

Now you can run the BFG to clean your repository up:

$ java -jar bfg.jar --strip-blobs-bigger-than 100M some-big-repo.git

那个页面上还有很多其他好的内容;我建议您在重试之前阅读全部内容。

您应该记住,使用 git,您对历史记录所做的一切都必须在本地完成。然后,一旦您满意,就会通过推送到远程存储库来发布。

所以,在这里你必须给出本地存储库的路径...

我已经使用以下命令解决了这个问题:

第 1 步

cd some-big-repo.git

第 2 步

java -jar path/bfg.jar --strip-blobs-bigger-than 100M 

如果您在 repo 目录中,则无需明确提及 repo 名称,它会自动检测 repo 并完成其工作。