Git GUI가 말하는 “느슨한 개체”는 무엇입니까? gc그 메시지를 제거했다. 이 문제가 무엇 loose

Git GUI를 열면 팝업 메시지가 나타납니다 loose objects. 나는 git gc그 메시지를 제거했다.

이 문제가 무엇 loose objects이며 어떻게 다시 발생하지 않도록 할 수 있습니까?



답변

SHA say-810cae53e0f622d6804f063c04a83dbc3a11b7ca가있는 객체 (블롭, 트리 및 커밋)는

.git/objects/81/0cae53e0f622d6804f063c04a83dbc3a11b7ca

(현재 모든 오브젝트가 동일한 디렉토리에 저장되는 것은 아니므로 파일 시스템의 성능을 향상시키기 위해 처음 두 문자로 분할)

위와 같이 저장된 객체를 느슨한 객체라고합니다.

레포로 시작하면 대부분 느슨한 물건이 있습니다. 숫자가 높을수록 비효율적이며 팩 파일에 저장됩니다. 이러한 객체를 묶음 객체라고합니다.

 git gc

객체를 패킹하기 위해 실행하는 것입니다 (보통 필요하지 않고 몇 주 전의 느슨한 객체도 제거되며 --prune=<date>옵션을 사용하면 더 이상 필요하지 않은 느슨한 객체를 강제로 제거 할 수 있습니다. 커밋을 수정할 때와 동일합니다. 더 오래 필요합니다.)


답변

힘내 책은 그것을 잘 설명합니다 :
https://git-scm.com/book/en/v2/Git-Internals-Packfiles

느슨한 객체가 더 간단한 형식입니다. 디스크의 단일 파일에 저장된 압축 데이터입니다. 별도의 파일에 기록 된 모든 개체