Folder trek Git LFS secara rekursif

100

Apakah mungkin untuk melacak secara rekursif semua file yang ada dalam folder dan subfoldernya dengan Git LFS?

Saya ingin melakukan sesuatu seperti ini:

git lfs track myfolder/*
csa
sumber

Jawaban:

147

Gunakan git lfs track "myfolder/**", dengan tanda kutip untuk menghindari shell sudah memperluas pola. Semua yang dilakukan oleh trackperintah tersebut adalah menulis ke .gitattributes, yang pada gilirannya menggunakan (hampir) aturan pencocokan pola yang sama seperti .gitignore, lihat deskripsi POLA FORMAT .

sschuberth.dll
sumber
Saya telah mencoba ini dengan subfolder, tetapi hanya file dan subfolder langsung (seperti myfolder / myfolder2 / ) yang ada di myfolder yang dilacak, tetapi bukan file yang ada di subfolder (seperti myfolder / myfolder / myfile.png ). Terima kasih atas bantuan Anda
csa
18
Ah, Anda mungkin menjadi korban dari ekspansi shell, yaitu myfolder/**diperluas oleh shell sebelum diteruskan ke Git. Saya telah memperbarui jawaban saya untuk menambahkan kutipan, yang seharusnya memperbaikinya.
sschuberth
2
Ya, ini berhasil untuk saya, dan menurut komentar juga untuk orang lain. Jika Anda menggunakan Windows, perhatikan bahwa perintah tersebut harus digunakan dari Git Bash, bukan dari cmd.
sschuberth
1
Sebenarnya baru saja mengujinya dan tampaknya artikel pusat bantuan itu salah, dan Anda ingin menggunakan git lfs track "myfolder/**"seperti yang disarankan jawaban ini. Detail lebih lanjut dan langkah-langkah verifikasi dapat ditemukan dalam jawaban ini .
Senseful
5
Saya harus menggunakan git lfs track "myfolder/**/*"untuk membuatnya bekerja.
Luc