Git 저장소의 크기를 찾는 간단한 방법은 무엇입니까?
그리고 du -h
내 저장소의 루트 디렉토리를 의미하지 않습니다 . 무시 된 파일이 많으므로 전체 저장소 크기와 크기가 다릅니다. 본질적으로 저장소 복제시 얼마나 많은 데이터가 전송되는지 알고 싶습니다.
Git 저장소의 크기를 찾는 간단한 방법은 무엇입니까?
그리고 du -h
내 저장소의 루트 디렉토리를 의미하지 않습니다 . 무시 된 파일이 많으므로 전체 저장소 크기와 크기가 다릅니다. 본질적으로 저장소 복제시 얼마나 많은 데이터가 전송되는지 알고 싶습니다.
답변:
업데이트 git 1.8.3은 대략적인 크기를 얻는보다 효율적인 방법을 도입했습니다
git count-objects -vH
(@VonC의 답변 참조)
"완벽한 크기"의 다른 아이디어를 위해 다음을 사용할 수 있습니다.
git bundle create tmp.bundle --all
du -sh tmp.bundle
닫기 (정확하지는 않음)
git gc
du -sh .git/
후자를 사용하면 다음과 같이 계산됩니다.
git bundle
을 git gc
실제로 추가 할 수 있습니까 ? 다른 (원치 않는) 아카이브를 만든 다음 크기를 측정합니까?
du
해당 파일의 크기를 측정하는 데 사용 하기 때문에 이것은 분명 합니다.
이후, 그 참고 자식 1.8.3 (2013 년 4 월 22D) :
"
git count-objects
"배운 "--human-readable
일명" "-H
에서"옵션은 다양한 많은 수를 보여Ki
/Mi
/GiB
필요에 따라 조정.
이것은 Jack Morrison 이 그의 답변 에서 -v
언급 한 옵션 과 결합 될 수 있습니다 .
git gc
git count-objects -vH
( ABB 의 답변에서git gc
언급했듯이 중요합니다 )
또한 (여전히 git 1.8.3) 출력이 더 완벽합니다.
"
git count-objects -v
" 남은 임시 팩 파일 및 기타 가비지를 개체 저장소 에 보고하는 방법을 배웠 습니다 .
git 명령
git count-objects -v
git 저장소의 크기를 잘 추정 할 수 있습니다. -v 플래그가 없으면 압축 해제 된 파일의 크기 만 알려줍니다. 이 명령은 $ PATH에 없을 수도 있습니다. 우분투에서 / usr / lib / git-core /에서 찾았습니다.
Git 맨 페이지에서 :
-v, --verbose
느슨한 오브젝트 수 및 소비 된 디스크 공간 외에도 팩 내 오브젝트 수, 팩 수, 해당 팩이 소비 한 디스크 공간 및 정리 된 git prunning을 실행하여 제거 할 수있는 오브젝트 수를보고합니다.
출력 결과는 다음과 유사합니다.
count: 1910
size: 19764
in-pack: 41814
packs: 3
size-pack: 1066963
prune-packable: 1
garbage: 0
찾고있는 줄은 size-pack
입니다. 이는 압축 된 모든 커밋 객체의 크기이거나 새로운 복제 된 리포지토리의 가능한 최소 크기입니다.
git count-objects -v
때 작동합니다 git-count-objects -v
(PATH에 없기 때문에).
git gc
하기 전에 실행 해야 할 수도 있습니다 git count-objects -v
. 증거는 여기 첫 번째 답변을 참조하십시오 : stackoverflow.com/questions/3532740/…
git count-objects -vH | grep 'size-pack'
. 는 H
@VonC는 그의 대답에 말했듯이, 사람이 읽을 수있는 형식으로 보여주는 것입니다.
git count-objects --help
: size-pack : KiB에서 팩이 사용하는 디스크 공간 (-H가 지정되지 않은 경우)
사용할 수 있습니다 git-sizer
. 에 --verbose
설정하면 출력 예 (아래)이다. Total size of files
줄을 찾으십시오 .
$ git-sizer --verbose Processing blobs: 1652370 Processing trees: 3396199 Processing commits: 722647 Matching commits to trees: 722647 Processing annotated tags: 534 Processing references: 539 | Name | Value | Level of concern | | ---------------------------- | --------- | ------------------------------ | | Overall repository size | | | | * Commits | | | | * Count | 723 k | * | | * Total size | 525 MiB | ** | | * Trees | | | | * Count | 3.40 M | ** | | * Total size | 9.00 GiB | **** | | * Total tree entries | 264 M | ***** | | * Blobs | | | | * Count | 1.65 M | * | | * Total size | 55.8 GiB | ***** | | * Annotated tags | | | | * Count | 534 | | | * References | | | | * Count | 539 | | | | | | | Biggest objects | | | | * Commits | | | | * Maximum size [1] | 72.7 KiB | * | | * Maximum parents [2] | 66 | ****** | | * Trees | | | | * Maximum entries [3] | 1.68 k | * | | * Blobs | | | | * Maximum size [4] | 13.5 MiB | * | | | | | | History structure | | | | * Maximum history depth | 136 k | | | * Maximum tag depth [5] | 1 | | | | | | | Biggest checkouts | | | | * Number of directories [6] | 4.38 k | ** | | * Maximum path depth [7] | 13 | * | | * Maximum path length [8] | 134 B | * | | * Number of files [9] | 62.3 k | * | | * Total size of files [9] | 747 MiB | | | * Number of symlinks [10] | 40 | | | * Number of submodules | 0 | | [1] 91cc53b0c78596a73fa708cceb7313e7168bb146 [2] 2cde51fbd0f310c8a2c5f977e665c0ac3945b46d [3] 4f86eed5893207aca2c2da86b35b38f2e1ec1fc8 (refs/heads/master:arch/arm/boot/dts) [4] a02b6794337286bc12c907c33d5d75537c240bd0 (refs/heads/master:drivers/gpu/drm/amd/include/asic_reg/vega10/NBIO/nbio_6_1_sh_mask.h) [5] 5dc01c595e6c6ec9ccda4f6f69c131c0dd945f8c (refs/tags/v2.6.11) [6] 1459754b9d9acc2ffac8525bed6691e15913c6e2 (589b754df3f37ca0a1f96fccde7f91c59266f38a^{tree}) [7] 78a269635e76ed927e17d7883f2d90313570fdbc (dae09011115133666e47c35673c0564b0a702db7^{tree}) [8] ce5f2e31d3bdc1186041fdfd27a5ac96e728f2c5 (refs/heads/master^{tree}) [9] 532bdadc08402b7a72a4b45a2e02e5c710b7d626 (e9ef1fe312b533592e39cddc1327463c30b0ed8d^{tree}) [10] f29a5ea76884ac37e1197bef1941f62fda3f7b99 (f5308d1b83eba20e69df5e0926ba7257c8dd9074^{tree})