![](/img/trans.png)
[英]git-filter-repo callback commit or callback message and --preserve-commit-hashes not working?
[英]Use git-filter-repo to filter out a list of files in commits which are not descendants of a given commit
似乎git filter-branch
已被弃用,而应使用git-filter-repo
。 我正在使用git filter-branch --index-filter
从提交中删除不是给定提交的后代的文件列表。 这就像
git filter-branch --index-filter 'git merge-base --is-ancestor aaaaaaaa $GIT_COMMIT ; if [ $? -eq 1 ] ; then git rm --cached --ignore-unmatch a.txt b.txt c.txt ; fi' HEAD
因此a.txt
、 b.txt
和c.txt
将从任何不是aaaaaaaa
后代的提交中删除。 有什么办法可以用git-filter-repo
实现这一点?
使用git filter-branch
获得更好的效果,使用git filter-repo
获得更好的效果。 我怀疑是否有可能让 filter-repo 完全按照您的要求做,或者至少做得不太好。
我建议简单地忽略对 git 过滤器分支的大多数批评,特别是过滤器回购自述文件中的批评,令人遗憾的是夸大了。 将export FILTER_BRANCH_SQUELCH_WARNING=1
放入~/.bashrc
并完成它。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.