Git LFS跟踪文件夹递归


100

是否可以使用Git LFS递归跟踪文件夹及其子文件夹中包含的所有文件?

我想做这样的事情:

git lfs track myfolder/*

Answers:


145

使用git lfs track "myfolder/**"带有引号的,可避免Shell扩展模式。该track命令所做的全部工作就是写入.gitattributes,而后者又(几乎)使用与相同的模式匹配规则.gitignore,请参见PATTERN FORMAT说明。


我已经尝试过使用子文件夹进行此操作,但是只会跟踪myfolder中包含的文件和直接子文件夹(例如myfolder / myfolder2 /),而不会跟踪子文件夹中包含的文件(例如myfolder / myfolder / myfile.png)。感谢您的帮助
-csa

18
嗯,您可能是shell扩展的受害者,即myfolder/**在传递给Git之前被shell扩展了。我已经更新了答案以添加引号,这应该可以解决该问题。
sschuberth '16

2
是的,这对我有用,根据评论对其他人也有用。如果您使用的是Windows,请注意该命令必须从Git Bash使用,而不是从cmd
sschuberth

1
实际上只是对其进行了测试,并且该帮助中心文章似乎不正确,并且您想使用git lfs track "myfolder/**"此答案所建议的内容。可以在此答案中找到更多详细信息和验证步骤。
有意义的

5
我不得不使用git lfs track "myfolder/**/*"它来使其工作。
卢克,
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.