Bir SubVersion deposunun boyutunu analiz etmek mümkün müdür?


10

Bir SubVersion deposundaki her bir projenin ne kadar disk alanı kullandığını bilmek mümkün müdür?

Her projenin çalışan bir kopyasını kontrol edebilir ve her projenin aldığı boyuta bakabilirim, ancak bunun projenin toplam boyutunu (tüm revizyonları) kapsadığını düşünmüyorum.

Deponun "db" dizininin altına bakabilirim, ama oradaki dosyaların hiçbiri mantıklı değil - her projenin ne kadar yer kapladığını anlamak için bunları kullanmanın mümkün olduğunu düşünmüyorum.

svn ls --verboseKomutu denedim , ancak bana verdiği boyut sadece kafa revizyonundaki gerçek dosyaların boyutu, tüm revizyonları içerdiğini sanmıyorum.

Belki bu mümkün değil, ama ben soracağımı düşündüm.

Şimdiden teşekkürler!

Yanıtlar:


1

Aklıma gelen tek şey şudur:

  • geçici yeni boş bir havuz yarat

  • svnadmin eski veri havuzunu boşaltır, svndumpfilter ile yalnızca tek bir projeyi korumak için filtreler ve yeni veri havuzuna aktarır

  • yeni deponun boyutuna bakın, ardından silin


3

Bunu son zamanlarda kullandım ama biraz daha doğru olacak şekilde değiştirdim

svn list -vR svn://server/repo/somedir | awk '{tmp=match($3,/[0-9]/);if(tmp){sum+=$3; i++}} END {print "\ntotal size= " sum/1024000" MB" "\nnumber of files= " i/1000 " K"}'

kullandım

{tmp=match($3,/[0-9]/) 

eğer yerine

($3 !="")

daha doğru bir dosya sayısı verdiğinden


2

-rSeçeneği kullanırsanız, bir düzeltme belirleyebilirsiniz.

Örneğin, düzeltme 1000:

svn ls -vR -r 1000

1

Deponun boyutu aşağıdaki komut kullanılarak bulunabilir.

Bu her zaman kesin sonuçlar vermese de, bunu çoğu zaman yardımcı buldum.

svn list -vR svn://server/repo/somedir | awk '{if ($3 !="") sum+=$3; i++} END {print "\ntotal size= " sum/1024000" MB" "\nnumber of files= " i/1000 " K"}'.

1

Sunucu terminaline erişiminiz varsa du (kullanılan disk) kullanabilirsiniz:

du -sh /var/svn-repos/project-doomsday

genellikle küçük veritabanı da dahil olmak üzere sunucuda bu repo tarafından kullanılan toplam alan miktarını verir.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.