2014-02-17 78 views
1

我已經克隆了一個本地回購到兩個不同的回購:一個裸露和一個非裸露。裸機爲750 MB,非裸機爲3 GB。由於我可以在兩者之間自由地「轉換」,因此相同的信息必須位於裸露和非裸露的存儲庫中。那麼,非裸露的人怎麼會是四倍大呢?爲什麼裸露的git回購是非裸露大小的1/4?

我會理解它是否是兩倍大,因爲可能每個文件都需要駐留在.git和工作目錄中。但爲什麼四次?

+0

@Paddy哎呀,謝謝 – Anna

+0

我寧願這是一個關於熊的問題,但我認爲這樣做更有意義。 – Paddy

回答

1

存儲在.git/objects中的文件經常被打包。這意味着它們被壓縮並且不會與塊邊界對齊。而結帳可能包含很多小文件。如果使用更好打包小文件(如btrfs)的文件系統,如果比率更好,我不會感到驚訝。因此,在您的.git/objects目錄中一起玩的兩個方面相對較小。那就是如果你沒有忘記git gc。 ;-)

1

因爲索引是「壓縮」的,所以壓縮。它們的大小比版本化文件的大小小,特別是如果它們是文本文件。

相關問題