git archive
kullanarak yerel olarak kaldırılmamış değişiklikler de dahil olmak üzere geçerli depo arşivini nasıl oluşturabilirim?Kapsanan değişiklikler içeren depo arşivini atla
cevap
Bunun eski olduğunu biliyorum ama sanırım bir çözüm buldum.
çalıştırın: git sağlam bir arşiv yapmak için taahhüt istemeyeceğine göre
stashName=`git stash create`;
git archive <options> $stashName
, biz yapabilir 'tek tek yok' git stash
kullanarak işlemek. create
komutu stash işlemini yaratır (çalışma dizini sıfırlamaz veya stash kümesine itmez) ve bunun için karma değerini döndürür.
Sarma işleminin yapılacağı alandan endişe ediyorsanız, git gc --prune=now
ile temizleyebilirsiniz. Aksi takdirde, sadece 2 hafta bekleyin ve kaybolacaktır.
Değişiklikleri yapmadıysanız, git archive
size yardımcı olmaz. Çalışma alanınızın bir anlık görüntüsünü istiyorsanız, tar
muhtemelen en iyi bahistir.
benim amaç için nevsan cevabını artırma - Her durumda (taahhüt veya değil) en son kod arşivlemek için:
uploadStash=`git stash create`; git archive -o code_outgoing.zip ${uploadStash:-HEAD}
Bir hata düzeltildi: git stash [şimdi] oluştur her zaman başarılı bir şekilde döner ve hiçbir dosya yokken hiçbir şey yazdırmaz. Çıkış koduna güvenmek yerine bash $ {var: -default} sözdizimini kullanın. –
IIRC bununla ilgili bir sorun var, arşivden git kaldırılmış dosyaları çıkarmaz. –
git ls-files
ile diğer çözüm:
git ls-files -z | xargs -0 tar -czvf archive.tar.gz
Bu, bence, en iyi cevabı. Ancak, ls dosyalarının -z seçeneğinin ve xargs seçeneğinin -0 (sıfır) seçeneğinin boşluklarla doğru şekilde işlenmesini tavsiye ederim: git ls-files -z | xargs -0 tar -czvf archive.tar.gz . – S2108887
Kesinlikle haklısın! Teşekkürler. Bu seçenekleri komut satırına ekledim. –
'Git ls dosyaları | tar Tczf - archive.tar.gz', tek bir komutun arşivlerinin boyutunda sistem tarafından uygulanan sınırlara sahip değildir. xargs herhangi bir komut için iyi değildir, gerçekten her şey için sadece bir kez koşmanız gerekir. – jthill
- 1. Kapsanan Metni Düzenle
- 2. openfire mesaj arşivini sorgulama
- 3. Atla
- 4. arama uyumsuz değişiklikler
- 5. Birçok sass dosyası içeren dizinde/klasörde değişiklikler nasıl izlenir
- 6. Depo
- 7. RSS arşivini almak mümkün mü
- 8. $ $ İlk aramayı atla
- 9. Birden fazla depo içeren bir klasörde birden fazla bölme
- 10. Atla tekrar
- 11. Atla ThenBy
- 12. Sınırlar Değişiklikler
- 13. Tasarruf ile kapsanan nedir: (validate => false)?
- 14. Python - BeautifulSoup - Kapsanan veriyi kapat Divs & Span's
- 15. Kapsanan ExecutionContext içeriğinde bulunan nesneler/yöntemler deneniyor
- 16. Bir PGP Self Decrypting Arşivini nasıl programlayabilirim?
- 17. Bir dalda yapılan tüm değişiklikler nasıl atılır?
- 18. "C/C++ Kullanıcı Günlüğü" kod arşivini nerede bulabilirim?
- 19. msdeploy dizini atla
- 20. javascript dizileriyle yöntemleri atla
- 21. JavaScript - Bağlantı noktasına atla
- 22. Birinci sınıf listeye atla
- 23. Bütün döngüyü atla Ansible
- 24. NavigationBar titleGörüntüle atla viewWillAppear
- 25. Pencereyi yakalama penceresinden atla
- 26. PHP son etiketini atla
- 27. Custom Atla Ayrıştırıcı :: Ruh
- 28. Scanf Tarama karakterini atla
- 29. Atla piton "ithal" ifadeleri
- 30. Atla işleyicisi beforeunload
harika çalışıyor, teşekkürler! –