为什么我的git过滤器没有被调用?

时间:2015-03-26 21:23:40

标签: git git-filter

我在〜/ repositories / foo的新git仓库中。我的.gitattributes看起来像这样:

*.txt   mycrypt

我的.git / config看起来像这样:

[core]
    repositoryformatversion = 0
    filemode = true
    bare = false
    logallrefupdates = true
    ignorecase = true
    precomposeunicode = true
[filter "mycrypt"]
    clean = tee /Users/matthew/temp/mycrypt.before.txt | openssl enc -base64 -pass pass:secret | tee /Users/matthew/temp/mycrypt.after.txt

我执行以下操作,但我的过滤器永远不会被调用(当我列出目录〜/ temp时,我没有看到任何mycrypt。*文件。)。为什么呢?

mkdir ~/temp # just for good measure
echo goo > goo.txt
git add goo.txt
git commit -m 'goo'

1 个答案:

答案 0 :(得分:4)

您首先缺少的是应用过滤器。在.gitattributes中,而不是:

*.txt   mycrypt

你想要:

*.txt   filter=mycrypt