BFG Repo-Cleaner声明我的github repo不是有效的Git存储库

时间:2016-07-17 18:34:02

标签: git github version-control bfg-repo-cleaner

这是来自a previous question on Stackoverflow的后续问题。

我试图从我的本地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个提交,没有其他人正在进行此项工作。

3 个答案:

答案 0 :(得分:10)

您已将GitHub网址提供给该工具,但其网站上的usage部分表示您应该使用您的存储库的本地副本:

  

用法

     

首先使用--mirror标记克隆您的仓库的新副本:

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

这是一个bare回购,这意味着您的普通文件不可见,但它是您的存储库的Git数据库的完整副本,并且在此处指出你应该备份它以确保你不会丢失任何东西。

     

现在您可以运行BFG来清理您的存储库:

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

该页面上还有很多其他好的内容;我建议你在再次尝试之前阅读整篇文章。

答案 1 :(得分:3)

我已使用以下命令修复了该问题:

STEP 1

cd some-big-repo.git

STEP 2

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

如果您位于repo目录中,则无需明确提及回购名称,它将自动检测回购并执行其工作。

答案 2 :(得分:1)

你应该记住,使用git,你在历史上所做的一切都必须做得很好,然后在你满意之后通过推送发布。

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