한 분기에서 다른 분기로 커밋 (특정 SHA-1 태그 사용)을 복사하려고합니다. 정확한 SHA-1 태그가되도록 정확한 복사를 원합니다.SHA-1 태그를 유지하면서 분기간에 개별 커밋 복사
어떻게이 작업을 수행 할 수 있습니까?
한 분기에서 다른 분기로 커밋 (특정 SHA-1 태그 사용)을 복사하려고합니다. 정확한 SHA-1 태그가되도록 정확한 복사를 원합니다.SHA-1 태그를 유지하면서 분기간에 개별 커밋 복사
어떻게이 작업을 수행 할 수 있습니까?
할 수 없습니다. 커밋의 SHA-1 해시는 부모 커밋, 커밋 메시지 콘텐츠 및 커밋 트리의 해시를 사용하여 계산됩니다.
이것은 부모 커밋이 변경되면 (즉, 분기가 동일한 커밋을 가리키는 경우를 제외하고) SHA-1도 변경된다는 것을 의미합니다.
체리 피클의 출처를 알기위한 유익한 사용 사례는 -x
옵션을 사용하여 git cherry-pick
으로 지정한 커밋 ID를 커밋 메시지에 추가합니다.
git merge
은 SHA1 해시를 보존하므로 git merge branchB
이 branchA
인 경우 커밋의 ID는 동일해야합니다. 물론 이것은 개별 커밋에서는 작동하지 않지만 전체 커밋에서 작동합니다.
간단히 말해서, [Content addressable storage] (http://en.wikipedia.org/wiki/Content-addressable_storage)를 사용합니다. – krlmlr