Pasta de trilhas do Git LFS recursivamente

100

É possível rastrear recursivamente todos os arquivos contidos em uma pasta e suas subpastas com Git LFS?

Eu gostaria de fazer algo assim:

git lfs track myfolder/*
csa
fonte

Respostas:

145

Use git lfs track "myfolder/**", entre aspas, para evitar que a casca já expanda o padrão. Tudo o que o trackcomando faz é escrever .gitattributes, que por sua vez usa (quase) as mesmas regras de correspondência de padrões que .gitignore, consulte a descrição do FORMATO DE PADRÃO .

sschuberth
fonte
Eu tentei isso com subpastas, mas apenas os arquivos e subpastas diretas (como myfolder / myfolder2 / ) contidos em myfolder são rastreados, mas não os arquivos contidos nas subpastas (como myfolder / myfolder / myfile.png ). Obrigado pela sua ajuda
csa
18
Ah, você provavelmente foi vítima da expansão do shell, ou seja, myfolder/**foi expandido pelo shell antes de ser passado para o Git. Atualizei minha resposta para adicionar citações, o que deve corrigir isso.
sschuberth
2
Sim, isso funciona para mim e de acordo com os comentários também para outros. Se você estiver no Windows, observe que o comando deve ser usado no Git Bash, não no cmd.
sschuberth
1
Na verdade, acabei de testar e parece que esse artigo da Central de Ajuda está incorreto e você deseja usar git lfs track "myfolder/**"como esta resposta sugere. Mais detalhes e etapas de verificação podem ser encontrados nesta resposta .
Senseful
5
Eu tive que usar git lfs track "myfolder/**/*"para fazer funcionar.
Luc de