Apakah mungkin untuk menganalisis ukuran repositori SubVersion?


10

Apakah mungkin untuk mengetahui berapa banyak ruang disk yang digunakan setiap proyek dalam repositori SubVersion?

Saya dapat melihat copy pekerjaan masing-masing proyek dan melihat ukuran masing-masing proyek, tapi saya tidak berpikir itu mencakup ukuran total proyek (semua revisi).

Saya dapat melihat di bawah direktori "db" repositori, tetapi tidak ada file di sana yang masuk akal - saya tidak berpikir itu mungkin untuk menggunakannya untuk mengetahui berapa banyak ruang yang ditempati setiap proyek.

Saya mencoba svn ls --verboseperintah itu, tetapi ukuran yang diberikannya hanya ukuran file aktual di revisi kepala, saya tidak berpikir itu termasuk semua revisi.

Mungkin ini tidak mungkin, tetapi saya pikir saya akan bertanya.

Terima kasih sebelumnya!

Jawaban:


1

Satu-satunya hal yang muncul di pikiran saya adalah ini:

  • buat repositori kosong baru sementara

  • svnadmin membuang repositori lama, memfilternya untuk mempertahankan hanya satu proyek dengan svndumpfilter, dan mengimpornya ke repositori baru

  • lihat ukuran repositori baru, lalu hapus


3

Saya menggunakan ini baru-baru ini tetapi mengubahnya sedikit agar lebih akurat

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"}'

Saya menggunakan

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

bukannya jika

($3 !="")

karena memberikan jumlah file yang lebih akurat


2

Jika Anda menggunakan -ropsi, Anda dapat menentukan revisi.

Misalnya, revisi 1000:

svn ls -vR -r 1000

1

Ukuran repositori dapat ditemukan menggunakan perintah berikut ..

Meskipun ini tidak menghasilkan hasil yang tepat sepanjang waktu, saya menemukan ini sangat membantu sebagian besar waktu.

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

Jika Anda memiliki akses ke terminal server Anda dapat menggunakan du (disk yang digunakan):

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

yang memberi Anda jumlah total ruang yang digunakan oleh repo itu di server, termasuk database yang biasanya kecil.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.