여기서 answer to a question은 git에서 삭제 된 파일을 복원하는 데 도움이됩니다.캐럿 (^) 문자의 의미는 무엇입니까?
이 솔루션은
git checkout <deleting_commit>^ -- <deleted_file_path>
캐럿 문자 (^
)는 무엇입니까
여기서 answer to a question은 git에서 삭제 된 파일을 복원하는 데 도움이됩니다.캐럿 (^) 문자의 의미는 무엇입니까?
이 솔루션은
git checkout <deleting_commit>^ -- <deleted_file_path>
캐럿 문자 (^
)는 무엇입니까
HEAD^
은 현재 분기의 첫 번째 부모를 의미합니다.
git 커밋에는 둘 이상의 부모가있을 수 있습니다. HEAD^
은 HEAD^1
의 줄임말이며, HEAD^2
등의 주소를 적절히 지정할 수도 있습니다. 어떤 커밋의
당신은 단지 HEAD
, 부모에게 얻을 수 있습니다. 세대를 거쳐 다시 이동할 수도 있습니다. 예를 들어, master~2
은 모호한 경우 첫 번째 상위를 선호하는 마스터 분기의 끝 조부모를 의미합니다. 이러한 지정자는 임의로 체인화 될 수 있습니다. , , topic~3^2
.
전체 내용 git rev-parse --help
의 “Specifying Revisions” 절을 참조하십시오.
그러나 선형 기록에서, 왜 'HEAD ^^^' 즉'HEAD ~~~'와 동등한가? – Vorac
@Vorac 선형 기록의 경우 예. –
캐럿은 특정 커밋의 부모를 나타냅니다. 예 : HEAD^
은 현재 HEAD의 부모를 참조합니다. (또한, HEAD^^
은 조부모를 나타냄).
"parent of"를 의미합니다. 따라서 HEAD^
은 "현재 HEAD의 부모"를 의미합니다. 함께 묶을 수도 있습니다 : HEAD^^
은 "현재 머리의 부모"(즉, 현재 머리의 조부모)를 의미하고, HEAD^^^
은 "현재 머리의 부모의 부모"를 의미하므로 앞으로.
캐럿은 커밋 오프셋 (부모)을 나타냅니다. 예를 들어 HEAD^
은 "HEAD에서 하나의 커밋"을 의미하고 HEAD^^^
은 "HEAD에서 세 커밋"을 의미합니다.
(^)는 명령의 상위 소스를 가져옵니다. 즉, HEAD ^는 HEAD의 부모를 갖습니다.
그렉 베이컨 (Greg Bacon)은 훌륭한 링크를 제공했지만 꽤 밀도가 있습니다. 힘내 소개 문서는 온라인으로도 개정 및 범위 지정자를 소개 :
이 링크는 의도 한 위치에 더 가깝습니다. http://git-scm.com/book/en/v2/Git-Tools-Revision-Selection#Ancestry-References – bholben
^
(캐럿)도 때 specifying ranges 사용할 수 있습니다. 제외 할
는 접두사^표기법 사용 입니다, 커밋에서 도달 커밋합니다. 예 :^r1 r2는 r2에서 도달 가능한 커밋을 의미하지만 은 r1에서 도달 할 수 없습니다.
<REV>
은 (즉,의 조상)에서 도달 가능한 커밋 포함.
^<REV>
은 (즉,의 조상)에서 도달 가능한 커밋 제외.
다음은 시각적 인 설명입니다.
기능을 마스터에 합병되었다 master
A <- B <- C <- D
/
E <- F
feature
가 C
두 개의 조상으로 만들었습니다 : 당신은 역사과 같이 있다고 가정하자. 힘내는이 조상 번호를 할당합니다. 메인 라인 조상 B
1이 할당되고 상위 기능 F
따라서 C^1
가 B
지칭하고 C^2
가 F
지칭
2가 할당된다. C^
은 C^1
의 별명입니다.
<rev>^3
만 사용하게됩니다. 당신이 3 개의 가지의 합병을 수행했다면.
FYI on windows : ^는 DOS 셸에서 예상대로 작동하지 않습니다. git bash shell을 사용하면 작동한다. –
내가 그것을 사용하려고 시도했을 때 (그것이 의미하는 바를 짐작할 때) 그것은 나에게 일어나지 않았다. 캐럿 ('^')은 cmd.exe의 이스케이프 문자입니다. 도움이 될만한지 알아보기 위해 사용할 때마다 실제로 아무 것도 지나치지 않고 결과가 전혀 다른 이유를 설명합니다. > _> 어리석은 cmd.exe. 당신은 그것을 두배로하거나 그것을 인용함으로써 그것을 벗어날 수 있습니다 : 'git log master ^^'또는'git log "master ^"' – bambams