방법 자식 저장소 노트 : 단일 네임 스페이스에 대해 커밋 당부모가 git notes에 저장되는 이유는 무엇입니까?
- 망할 놈의 하나 개의 메모를 저장할 수 있습니다. 하나는 여러 개의 네임 스페이스를 가질 수 있습니다. 기본 네임 스페이스는 커밋입니다.
- .git/심판/노트/트리 개체 하나 해시 (예를 들어,
MainHash_2
)를 포함한다. 메모를 만들 때마다 해시가 변경됩니다. - 이 나무 개체 은 두 개 더 해시를 포함한다. 하나의 트리 구조 (노트 트리 구조, 예 :
- 노트 트리 구조에는 각 메모에 대한 항목입니다. 각 엔트리에는 2 개의 해시가 있습니다. 하나는 내용을 나타내고 다른 하나는 지정된 커밋입니다. 제 점에서 언급했듯이
NOTES_2
)와 하나의 부모 트리 오브젝트 (이 노트를 작성하기 전에 .git/refs/notes /에있는 것)는
MainHash_1
입니다.
이유는 부모가 저장된다? 이 부모 (유형은 2 번에서 언급 한 것과 동일 함)는 메모 당 하나의 항목을 포함하는 다른 트리를 포함합니다.
가정은 현재 세 가지 사항이있다. MainHash_2
에는 NOTES_2
의 해시가 포함되어 있으며 각 메모마다 세 개의 항목이 들어 있습니다. MainHash_1
에는 두 개의 항목이 포함 된 NOTES_1
의 해시가 포함됩니다 (지금 생성 된 메모 제외한 나머지 모든 메모). 두 항목을 두 번 저장하는 이유는 무엇입니까 ??
으로 확인할 수 있으며 중복 정보 또는 우리가 정말 어떤 시나리오에서 부모를 필요로 하는가? –
@knoxxs 먼저 메모 기록을 확인하고 싶을 수 있습니다. 메모는 변경 가능하므로 수정 기록을 유지하는 것이 좋습니다. 두 번째로, 그것은 git이 작동하는 방법입니다. notes는 기존의 git 기반 구조를 사용하는 추가 기능입니다. – kirelagin