Apa cara sederhana untuk menemukan ukuran repositori Git saya?
Dan maksud saya bukan du -h
pada direktori root repositori saya. Saya memiliki banyak file yang diabaikan, sehingga ukurannya akan berbeda dari ukuran total repositori saya. Saya pada dasarnya ingin tahu berapa banyak data yang akan ditransfer setelah kloning repositori saya.
Jawaban:
Untuk gagasan "ukuran lengkap" yang berbeda, Anda dapat menggunakan:
Tutup (tapi tidak tepat :)
Dengan yang terakhir, Anda juga akan menghitung:
sumber
git bundle
dangit gc
tidak? apakah itu akan membuat arsip lain (yang tidak diinginkan) dan kemudian mengukur ukurannya?du
untuk mengukur ukuran file itu.Perhatikan bahwa, sejak git 1.8.3 (April, 22d 2013) :
Itu bisa dikombinasikan dengan
-v
opsi yang disebutkan oleh Jack Morrison dalam jawabannya .(
git gc
Penting, seperti yang disebutkan oleh ABB 's jawaban )Plus (masih git 1.8.3), output lebih lengkap:
sumber
Perintah git
akan memberi Anda perkiraan yang baik tentang ukuran repositori git. Tanpa tanda -v, itu hanya memberi tahu Anda ukuran file yang sudah dibongkar. Perintah ini mungkin tidak ada di $ PATH Anda, Anda mungkin harus melacaknya (di Ubuntu saya menemukannya di / usr / lib / git-core /, misalnya).
Dari halaman manual Git:
Output Anda akan terlihat mirip dengan yang berikut:
Garis yang Anda cari adalah
size-pack
. Itu adalah ukuran dari semua objek commit yang dikemas, atau ukuran sekecil mungkin untuk repositori baru yang dikloning.sumber
git count-objects -v
bekerja ketikagit-count-objects -v
tidak (karena itu tidak ada dalam PATH saya).git gc
sebelum menjalankangit count-objects -v
karena repositori Anda mungkin belum dikemas. Lihat jawaban pertama di sini untuk bukti: stackoverflow.com/questions/3532740/…git count-objects -vH | grep 'size-pack'
. TheH
adalah untuk menunjukkan dalam format yang dapat dibaca manusia, seperti dikatakan @VonC dalam jawabannya.git count-objects --help
: size-pack: ruang disk yang dikonsumsi oleh paket, dalam KiB (kecuali -H ditentukan)Anda bisa menggunakannya
git-sizer
. Dalam--verbose
pengaturan, contoh outputnya adalah (di bawah). CariTotal size of files
garisnya.sumber
Jika Anda menggunakan git LFS, objek count git tidak menghitung binari Anda, tetapi hanya pointer ke mereka.
Jika file LFS Anda dikelola oleh Artifactory, Anda harus menggunakan REST API:
sumber
Saya pikir ini memberi Anda daftar total semua file dalam sejarah repo:
Anda dapat mengganti
--all
dengan treeish (HEAD
,origin/master
, dll) untuk menghitung ukuran cabang.sumber
Jika repositori ada di GitHub , Anda dapat menggunakan aplikasi Android open source Octodroid yang secara default menampilkan ukuran repositori.
Misalnya, dengan repositori mptcp :
Penafian: Saya tidak membuat Octodroid.
sumber