2

我想在 Windows 7 上创建一个自定义的清洁/涂抹过滤器。

这是本地配置文件中的过滤器设置:

[filter "insertSha"]
    smudge = cat
    clean = 'D:/clean.exe'

这是我的 .gitattributes 文件的内容:

 *.sha.cs    insertSha

我对符合过滤条件的接缝感兴趣的文件:

$ git check-attr -a myFile.sha.cs
myFile.sha.cs: insertSha: set

可执行文件 (clean.exe) 不会被调用,因为出于跟踪目的,我每次执行程序时都会在已知位置创建一个文件。

我也尝试将可执行文件放在其他地方,但它也不起作用。

到目前为止,我发现的所有清洁/涂抹过滤器的例子都只涉及调用sed或类似的。

4

1 回答 1

3

也许你.gitattributes应该说:

*.sha.cs filter=insertSha

我认为git为了将来的可移植性而有效地忽略了未知属性(在新版本中引入新属性git),所以它看到你insertSha并且不将其理解为它知道的属性,然后立即忽略它......

于 2013-10-31T14:33:06.213 回答