2015-02-02 2 views
0

HEAD가있는 지점과 다른 분기점에있는 별칭을 만들고 원래 분기로 다시 전환하고 싶습니다. 그러나 이전 지점을 기억할 방법이 있는지 확실하지 않습니다. 나는 태그를 사용해 보았습니다 :원래 별점 git 별칭 기억하기

git tag placeholder && 
    git co master && 
    git co placeholder && 
    git tag -d placeholder 

그러나 이것은 원래 지점이 아니라 분리 된 머리말을 남겨 둡니다.

+0

일단 자리 표시자를 삭제하면 분리 HEAD 이외의 커밋에 대한 다른 참조는 없습니다. 어쩌면 주인을 다시 확인하려고 했겠습니까? –

+0

처음에 "분리 된 HEAD"(태그 등)에 있다면 무엇을하고 싶습니까? – torek

+0

처음에는 HEAD가 지점의 끝에 있다고 가정합니다. –

답변

1

git checkout - (즉, 끝에 단지 대시)을 사용하면 체크 아웃 한 마지막 분기 (예 : cd -의 작동 방식)로 돌아갈 수 있습니다.

+0

'cd-'가 뭔지 전혀 몰랐습니다. 매일 새로운 것을 배우십시오. – JacobEvelyn

1

는이 같은 의도 한 작업 뭔가를 포장 수 :

[alias] 
     bookmark = "!export OLD_HEAD=`git rev-parse --abbrev-ref HEAD`; git checkout develop; <do stuff>; git checkout $OLD_HEAD" 

는 기본적으로이 환경 변수에 현재 분기를 저장 의도 된 작업을 수행하고, 원래의 지점 밖으로 확인합니다.

+0

문서에 따르면'git rev-parse --abbrev-ref '는 "모호하지 않은 짧은 이름의 개체 이름"을 반환해야합니다. 그러나 "HEAD"는 비슷하게 모호하지 않으며 짧습니다. 그렇다면 분기의 이름이 왜 반환 되었습니까? –

+1

머리글은 실제 개체에 대한 참조입니다. 본질적으로 명령은 HEAD가 보유하고있는 실제 개체 (이 경우에는 현재있는 지점)를 가져 오는 링크를 따릅니다. 자세한 내용은 http://stackoverflow.com/questions/2304087/what-is-head-in-git을 참조하십시오. – acanby