[英]How to run git-filter-repo commands from python script?
尝试从 python 运行 git-filter-repo 命令。 我不知道应该怎么做。 git filter-repo --path README.md --path guides/ --path tools/releases
到目前为止,我有:
filtering_options = git_filter_repo.FilteringOptions.default_options()
filtering_options.source = _fragment_repo_git_directory(workspace, "svn-import")
filtering_options.target = _main_repo_git_directory(workspace).encode()
filtering_options.force = True
filtering_options.replace_refs = "update no add"
repo_filter = git_filter_repo.RepoFilter(
filtering_options,
# ?????????
)
repo_filter.run()
您可以从newren/git-filter-repo/contrib/filter-repo-demos/lint-history
脚本中获得灵感,该脚本确实使用回调 function 作为您的#?????????
争论:
try:
import git_filter_repo as fr
except ImportError:
raise SystemExit("Error: Couldn't find git_filter_repo.py. Did you forget to make a symlink to git-filter-repo named git_filter_repo.py or did you forget to put the latter in your PYTHONPATH?")
def lint_non_binary_blobs(blob, metadata):
...
filter = fr.RepoFilter(args, blob_callback=lint_non_binary_blobs)
filter.run()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.