Git checkout 1.7.0 seyrek?
Yeni sparse checkout feature Gıt 1.7.0, sadece SVN yapabilirsiniz ne gibi bir alt dizin içeriğini almak mümkün mü? ** 15, ama tam dizin yapısını korur buldum. Ben sadece içeriğini istediğini düşün '' dizini, gerçek bir dizin adında olmadan''. perl
-- -- DÜZENLEYİN
Örnek:
Git benim depoyu aşağıdaki yolları içerir
repo/.git/
repo/perl/
repo/perl/script1.pl
repo/perl/script2.pl
repo/images/
repo/images/image1.jpg
repo/images/image2.jpg
repo/doc/
repo/doc/readme.txt
repo/doc/help.txt
İstediğim yukarıdaki depoyu üretmek mümkün bu düzen için
repo/.git/
repo/script1.pl
repo/script2.pl
Ancak mevcut seyrek checkout özelliği ile, sadece almak mümkün gibi görünüyor
repo/.git/
repo/perl/script1.pl
repo/perl/script2.pl
hangi istediğim bir şey DEĞİL.
CEVAP
Hala tüm dosyaları olan bütün depo, klon gerekiyor. Sadece tarihin sınırlı bir miktarda almak için --depth
bayrak kullanabilirsiniz.
Depo klonlanmış sonra, okuma-ağaç numara "" .git/info/sparse-checkout
dosya içinde dosya veya dizinlerin depoyu. görünüm sınırları
Şu an biraz soğuk olduğundan zayıflığına yönetmenize yardımcı olmak için hızlı bir senaryo yazdım:
#!/bin/sh
echo > .git/info/sparse-checkout
for i in "$@"
do
echo "$i" >> .git/info/sparse-checkout
done
git read-tree -m -u HEAD
Eğer sen Kaydet bu komut dosyası olarak git-sparse.sh
içine yolunu bildirdi çağırarak git --exec-path
, ardından koşmak git sparse foo/ bar/
sadece "ödeme" foo ve bar dizinler, veya git sparse '*'
için her şeyi tekrar tekrar.
Checkout önceki şube gıt için herhangi...
Eclipse git checkout (aka, döner)...
tarihe git checkout...
git durumunu gösterir değişiklikleri, ...
Javascript diziler seyrek?...