我怎样才能轻松地假设 - 不变的' git中的子目录?

时间:2015-01-17 01:58:05

标签: git gitignore

首先让我说.gitignore功能不是我要问的。我有一些特定的目录,必须在跨平台构建之前进行。这些是图书馆的东西,对我来说每天都不会改变。 I learned这样做的方法是

git update-index --assume-unchanged
确实很好,除了它不理解通配符或解释目录名以包含其下的所有内容。 (好,半精;见下文)

如果我可以将它放在包含不会改变的库文件的树的顶部,一个名字,这将是最方便的。但是,这不起作用。

这也不是真正的功能。它可以防止Unstaged Changes中的垃圾邮件,但它也不会阻止git不时地将所有内容放回想要它的方式。

有没有办法做到这一点,或者有更好的方法来完成我想要的东西?

1 个答案:

答案 0 :(得分:0)

我不确定完全明白你想要什么,但我想你可能想看看gitattributes

.gitattributes中,您可以定义与过滤器关联的路径,然后在.git/config中可以配置clean和smudge命令:

这样,您可以为一组文件指定特殊行为。

我使用它在我的dotfiles中有一个集中的.gitconfig,并根据我的电脑使用clean / smudge更改电子邮件和一些参数。

我认为你可以用同样的方式欺骗​​git而不是修改整个文件。