git filter不运行

6rqinv9w  于 2023-11-15  发布在  Git
关注(0)|答案(1)|浏览(128)

我正在尝试实现this解决方案,这意味着在git中创建一个过滤器。我在.git/config中添加了这些过滤器

[core]
attributesfile = .gitattributes

[filter "nbstrip_full_test"]
    clean = "echo Hello World .git/config"
    smudge = cat

[filter "nbstrip_full"]
clean = "jq --indent 1 \
        '(.cells[] | select(has(\"outputs\")) | .outputs) = []  \
        | (.cells[] | select(has(\"execution_count\")) | .execution_count) = null  \
        | .metadata = {\"language_info\": {\"name\": \"python\", \"pygments_lexer\": \"ipython3\"}} \
        | .cells[].metadata = {} \
        '"
smudge = cat
required = true

字符串
在.gitattributes中

*.ipynb filter=nbstrip_full_test
*.ipynb filter=nbstrip_full


但是,当我提交或运行git checkout jupyter/exploration.ipynb时,我没有看到过滤器被应用。
this测试库中找到设置。

git version 2.39.2

kd3sttzy

kd3sttzy1#

要检查 cleansmudge 过滤器是否运行,请设置环境变量GIT_TRACE=1。输出包括调用的过滤器命令(参见注解中的示例)。
还要注意,查看工作树文件的命令(如git addgit diff)运行 clean 过滤器。将数据从存储库复制到工作树的命令(如git checkout)运行 smudge 过滤器。

相关问题