커밋 식별하기

절대적 커밋 이름

커밋에 40자리의 SHA1 해시값을 만들어 저장하는데 이것을 커밋 해시 혹은 커밋 ID라고 부른다. 보통 SHA1 해시값 앞 7자리를 접두사로 사용한다.

commit eda0fe24b5738ce5b25a2f7962a0a0b0a7baffde
Author: KwanOh, Lee <[email protected]>
Date:   Thu Aug 18 18:44:46 2016 +0900

    update css

심볼릭 참조

.git/refs 디렉토리에 계층적으로 저장되는 Git 객체에 대한 간접 참조이다.

로컬 브랜치를 나타내는 refs/heads/ref, 원격 추적 브랜치용을 나타내는 refs/remotes/ref 그리고 태그용으로 사용되는 refs/tags/ref라는 세가지 네임스페이스가 존재한다.

master 브랜치는 실제로 refs/heads/master라는 이름을 줄여 사용하는 것이다. 원격 저장소에 있는 origin/master 브랜치는 refs/remotes/origin/master라는 실제 이름을 갖고 있다.

상대적 커밋 이름

캐럿(^)

상위 커밋을 선택할 때 캐럿을 사용한다.

틸트(~)

틸트는 기준 커밋으로부터 단계적인 상위 커밋을 참조한다. C~1은 C로부터 한 단계 위 커밋 그리고 C~2는 C로부터 두 단계 위 커밋을 참조한다.

특수 심볼릭 참조

HEAD 참조는 항상 현재 브랜치의 끝을 참조한다. 즉 해당 브랜치 내에서 최신의 커밋을 참조한다.

ORIG_HEAD

병합이나 커밋을 조정하는 작업에서 HEAD를 새 값으로 저정하기 이전에 ORIG_HEAD에 조정해둔다. 이 참조는 이전 상태로 되돌리거나 이전 상태를 비교할 때 사용할 수 있다.

FETCH_HEAD

git fetch 명령이 실행되면 원격 저장소로부터 가져온 모든 브랜치의 헤드를 .git/FETCH_HEAD 파일에 기록한다. 즉, FETCH_HEAD는 원격 저장소로부터 가져온 브랜치의 HEAD를 의미한다.

MERGE_HEAD

병합 작업이 이루어지면 병합되는 브랜치의 헤더가 MERGE_HEAD에 기록된다.

results matching ""

    No results matching ""