2011-01-05 15 views
11

Maksimum sayıda sayfa sayısı var mı, yoksa istediğiniz kadar var mı?Maksimum geç gitme sayısı var mı?

Ben

git stash list 

git stash list --date=local 

kadar sonuç listelemiyor farkındayım Ama Linus Torvalds fazla x stashes olan herkes hak bir aptal olduğunu düşünüyor eski depoları kaybetmek mi?

+5

Um, Linus Torvalds'ın görüşü neyle ilgili? –

+1

Çok sayıda tabure varsa, bunlardan bazıları belki de dallar olarak adlandırılmalıdır. –

+0

Ekranda gezinmek için yeterli çıktıya sahip olan her şey için git'in varsayılan PAGER ekleme varsayılan davranışını görmediğinizden emin misiniz? –

cevap

19

Stashe zorluğu yoktur. Stashes, stash adlı özel olarak adlandırılan bir ref reflog kullanılarak basitçe uygulanır.

+0

Bu, 'prune 'veya' git gc' komutunu seçerseniz silinecekleri anlamına mı geliyor? –

+0

Ya, emin değilim. Genel olarak, reflog 90 gün sürer (veya ulaşılamaması gereken işlemler için 30 gün). Git'in bu sınırı stash'a uygulamamasını beklerdim, ama emin olamam. –

+3

Sadece kaynağı kontrol ettim, gerçekten stash işlemek için özel olarak görünüyor. –

8

Hayır, sınır yoktur.

$ du -sh .git; \ 
> for i in {1..10000}; do echo $i > README; git stash -q; done; \ 
> git gc -q; du -sh .git; time git stash list | wc -l 
8.5M  .git 
13M  .git  # space efficient 
10000    # all there 
real  0m0.212s # listing 10,000 entries 
$ echo foo > README; time git stash -q; time git stash pop -q 
real  0m0.159s # save still fast 
real  0m0.146s # pop still fast 

Daha test etmedi, ama yine de 100.000 veya bir milyona aynı çalışacağız varsaymak istiyorum: Aslında Git oldukça incelikle stashes çok sayıda yönetir. Yani evet, stashların sayısı gerçekten sınırsızdır.

İlgili konular