¿Por qué mi filter de git no se invoca?

Estoy en un nuevo repository de git en ~ / repositories / foo. Mi .gitattributes se ve así:

*.txt mycrypt 

Mi .git / config se ve así:

 [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 

Hago lo siguiente, pero mi filter nunca se invoca (cuando list directory ~ / temp, no veo ningún file mycrypt. *). ¿Por qué?

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

Lo primero que te falta es aplicar el filter. En .gitattributes , en lugar de:

 *.txt mycrypt 

usted quiere:

 *.txt filter=mycrypt