考虑到我的.gitignore和.gitattributes中都有git文件,git在两者之间的表现和优先级如何?它是忽略pdf文件还是将它们作为LFS存储?
发布于 2017-11-10 14:10:13
.gitignore告诉git,默认情况下,它不应该注意给定路径上的未跟踪文件。
.gitattributes告诉git如何对给定路径上的文件执行特定操作(如果/何时执行上述操作)。要想尝试执行这些操作,通常至少需要开始跟踪文件--当然,LFS使用的属性也是如此。
在这两种情况下,“在给定的路径”也可能意味着“匹配一个给定的模式”。因此,这里没有冲突,也没有优先次序;我们只需要关注每一个问题的含义。如果您将*.pdf放在.gitignore中,并且还使用.gitattributes设置用于LFS跟踪的属性的*.pdf,那么:
git add -f覆盖忽略规则.gitattributes进行管理。.gitattributes条目之前提交的,则可能不是。因此,在这个设置中,LFS充当了一个安全网,以防止PDF文件炸毁您的回购数据库,即使有人覆盖了忽略规则。也许这意味着“我们确实跟踪了一两个PDF文件;但是其他PDF文件可能出现在工作树中,而我们通常不想要它们。”
发布于 2017-11-10 12:42:56
.gitignore忽略未跟踪的文件--那些未与git add一起添加的文件;.gitattributes用于跟踪文件。也就是说,可以用.gitattributes处理一个PDF文件,可以忽略另外两个PDF文件(只是一个例子)。
https://stackoverflow.com/questions/47219985
复制相似问题