gpt4 book ai didi

git - 错误 : Unable to access jarfile bfg. jar - BFG

转载 作者:IT王子 更新时间:2023-10-29 00:49:06 25 4
gpt4 key购买 nike

所以我在之前的提交中错误地提交了我的 secrets.yml(哎呀!!)我想清理我的 git 提交历史。看来最简单的禁食方法是使用BFG。我已经下载了 jar 文件并安装了 Java 是必需的,并且我已经创建了我的 repo 的镜像 - 但是当我按照文档运行命令时:

java -jar bfg.jar --delete-files secrets.yml my-repo.git

我得到错误 Unable to access jarfile bfg.jar

文档非常漂亮,但没有说明我是否应该做些什么来安装它或让它运行,或者链接到我的镜像仓库,我很困惑。我看了一个 youtube 教程,上面说我应该使用类似命令创建符号链接(symbolic link);

ln -s ~/bfg-1.11.6.jar/usr/local/bin/bfg

运行 bfg,除非我不确定该命令的第二部分指的是什么(/usr/local/bin/bfg)或者在我的情况下它应该指向哪里,因为这对我不起作用。我将 jar 文件保存在我的用户根目录中。我需要移动它吗?我如何在我的镜像存储库上运行 BFG,当我运行它时,我应该在我的镜像应用程序目录中内部运行它吗?还是从应用程序外部运行它?

最佳答案

2015:From the documentation ,应该是:

java -jar bfg.jar <options> yourrepo

如果出现类似“Unable to access jarfile bfg.jar”的错误,请尝试使用 jar 的完整路径:/home/user/path/to/bfg.jar

If the jars are configured to be run with java ,那么 /usr/local/bin/bfg 将是引用正确 bfg jar 的符号链接(symbolic link)的路径。

替代方案在“Remove sensitive data”中描述

git filter-branch --force --index-filter \
'git rm --cached --ignore-unmatch Rakefile' \
--prune-empty --tag-name-filter cat -- --all

或(2017 年 11 月更新),如 commented通过 JeremyDouglass ,

If you download the latest (e.g. from 1.12.16, the bfg-1.12.6.jar) and you only want to use standard commands in a local staging directory only (no path, no symlink), then you can simply rename the jar:

mv bfg-1.12.16.jar bfg.jar 
java -jar bfg.jar --delete-files bad.txt repo.git

2019-2020:最近,你现在会使用你应该使用 git filter-repo (我 mentioned here)。

Install it first . (python3 -m pip install --user git-filter-repo)

然后,使用 path-based filter :

git filter-repo --path secrets.yml --invert-paths HEAD

HEAD 意味着它只会改变你当前的分支提交。
删除 HEAD,它将覆盖所有分支中的所有提交。

关于git - 错误 : Unable to access jarfile bfg. jar - BFG,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32428981/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com