영어프랑스어스페인어

Ad


온웍스 파비콘

git-rev-parse - 클라우드에서의 온라인

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터를 통해 OnWorks 무료 호스팅 제공업체에서 git-rev-parse를 실행하세요.

Ubuntu Online, Fedora Online, Windows 온라인 에뮬레이터 또는 MAC OS 온라인 에뮬레이터와 같은 여러 무료 온라인 워크스테이션 중 하나를 사용하여 OnWorks 무료 호스팅 제공업체에서 실행할 수 있는 git-rev-parse 명령입니다.

프로그램:

이름


git-rev-parse - 매개변수 선택 및 마사지

개요


자식 rev 구문 분석 [ --옵션 ] ...

기술


많은 Git 도자기 같은 명령은 플래그를 혼합하여 사용합니다(예:
대시 -) 및 기본 매개변수를 의미하는 매개변수 자식 개정 목록 내부적으로 사용하는 명령
다운스트림에서 사용하는 다른 명령에 대한 플래그와 매개변수 자식 개정 목록. 이
명령을 사용하여 구별합니다.

옵션


조작 모드
이러한 각 옵션은 명령줄에 먼저 나타나야 합니다.

--parseopt
자식 rev 구문 분석 옵션 구문 분석 모드에서(아래 PARSEOPT 섹션 참조)

--sq-quote
자식 rev 구문 분석 쉘 인용 모드에서(아래 SQ-QUOTE 섹션 참조) 대조적으로
아래의 --sq 옵션, 이 모드는 인용만 수행합니다. 명령하기 위해 다른 작업은 수행되지 않습니다.
입력.

옵션 for --parseopt
--keep-dashdash
--parseopt 모드에서만 의미가 있습니다. 옵션 파서에게 첫 번째 항목을 출력하도록 지시합니다.
건너 뛰는 대신 만났습니다.

--비 옵션에서 중지
--parseopt 모드에서만 의미가 있습니다. 옵션 파서가 처음에 중지되도록 합니다.
옵션이 아닌 인수. 옵션을 취하는 하위 명령을 구문 분석하는 데 사용할 수 있습니다.
그들 자신.

--붙어있는 길이
--parseopt 모드에서만 의미가 있습니다. 다음과 같은 경우 옵션을 긴 형식으로 출력합니다.
사용 가능하며 주장이 멈췄습니다.

옵션 for 필터링
--revs-only
의도하지 않은 플래그와 매개변수를 출력하지 마십시오. 자식 개정 목록 명령.

--회전 없음
다음을 위한 플래그와 매개변수를 출력하지 마십시오. 자식 개정 목록 명령.

--플래그
플래그가 아닌 매개변수를 출력하지 마십시오.

--플래그 없음
플래그 매개변수를 출력하지 않습니다.

옵션 for 산출
--기본
사용자가 지정한 매개변수가 없으면 다음을 사용하십시오. 대신에.

--접두사
마치 자식 rev 구문 분석 에서 호출되었습니다. 작업의 하위 디렉토리
나무. 모든 상대 파일 이름은 접두사가 붙은 것처럼 확인됩니다. 그리고 될 것이다
그런 형태로 인쇄됩니다.

이는 인수를 하위 디렉터리에서 실행되는 명령으로 변환하는 데 사용할 수 있습니다.
저장소의 최상위 수준으로 이동한 후에도 계속 사용할 수 있습니다. 예를 들어:

접두사=$(git rev-parse --show-prefix)
cd "$(git rev-parse --show-toplevel)"
eval "set -- $(git rev-parse --sq --prefix "$prefix" "$@")"

--검증
정확히 하나의 매개변수가 제공되고 원시 매개변수로 변환될 수 있는지 확인하세요.
객체 데이터베이스에 액세스하는 데 사용할 수 있는 20바이트 SHA-1입니다. 그렇다면, 그것을
표준 출력; 그렇지 않으면 오류가 발생합니다.

출력이 실제로 개체의 개체 이름을 지정하는지 확인하려는 경우
데이터베이스 및/또는 필요한 특정 유형의 개체로 사용할 수 있는 경우
^{type} 연산자를 매개변수에 적용합니다. 예를 들어 git rev-parse "$VAR^{commit}"
$VAR이 커밋 같은 기존 개체의 이름을 지정하는지 확인합니다(예: 커밋 또는
커밋을 가리키는 주석이 달린 태그) $VAR이 기존 이름을 지정하는지 확인하려면
모든 유형의 객체, git rev-parse "$VAR^{object}"를 사용할 수 있습니다.

-q, --조용한
--verify 모드에서만 의미가 있습니다. 첫 번째 인수인 경우 오류 메시지를 출력하지 않습니다.
유효한 개체 이름이 아닙니다. 대신 1이 아닌 상태로 자동 종료됩니다. SHA-XNUMX
성공하면 유효한 객체 이름이 stdout에 인쇄됩니다.

--제곱
일반적으로 출력은 플래그와 매개변수당 한 줄로 이루어집니다. 이 옵션은 출력을
쉘에서 사용하기 위해 적절하게 인용된 한 줄입니다. 당신이 당신을 기대할 때 유용합니다
공백과 개행 문자를 포함하는 매개변수(예: pickaxe -S를 다음과 함께 사용하는 경우) 자식
차이점-*). --sq-quote 옵션과 달리 명령 입력은 여전히 ​​해석됩니다.
평소와 같이.

--아니다
객체 이름을 표시할 때 앞에 다음을 붙입니다. ^ 그리고 스트립 ^ 객체 이름의 접두사
이미 가지고 있는 것입니다.

--abbrev-ref[=(엄격|느슨한)]
개체 이름의 모호하지 않은 짧은 이름입니다. core.warnAmbiguousRefs 옵션은 다음과 같습니다.
엄격한 약어 모드를 선택하는 데 사용됩니다.

--short, --short=번호
객체 이름의 전체 SHA-1 값을 출력하는 대신 다음과 같이 축약해 보십시오.
더 짧은 고유 이름입니다. 길이를 지정하지 않으면 7이 사용됩니다. 최소 길이는 4입니다.

--기호
일반적으로 객체 이름은 SHA-1 형식으로 출력됩니다(가능한 ^ 접두사); 이것
옵션을 사용하면 원래 입력에 최대한 가까운 형식으로 출력됩니다.

--기호 전체 이름
이는 --symbolic과 유사하지만 참조가 아닌 입력(예: 분기 또는
태그 이름; 또는 더 명확하게 "heads/master" 형식을 명확하게 하고 싶을 때
불행히도 이름이 "master"인 태그가 있는 경우 "master" 분기의 이름을 지정하고 표시합니다.
전체 참조 이름으로 사용합니다(예: "refs/heads/master").

옵션 for 사물
--모두
refs/에 있는 모든 참조를 표시합니다.

--분기[=패턴], --tags[=패턴], --remotes[=패턴]
모든 분기, 태그 또는 원격 추적 분기를 각각 표시합니다(즉, 발견된 참조
참조/헤드, 참조/태그 또는 참조/원격에서 각각).

패턴이 주어지면 주어진 쉘 글로브와 일치하는 참조만 표시됩니다. 만약
패턴에 글로빙 문자(?, * 또는 [)가 포함되어 있지 않으면 접두사로 변환됩니다.
/*를 추가하여 일치시킵니다.

--glob=패턴
쉘 글로브 패턴 패턴과 일치하는 모든 참조를 표시합니다. 패턴이 시작되지 않는 경우
refs/를 사용하면 자동으로 앞에 추가됩니다. 패턴에 포함되지 않은 경우
글로빙 문자(?, * 또는 [)를 사용하는 경우 /*를 추가하여 접두사 일치로 변환됩니다.

--제외=
일치하는 참조를 포함하지 마세요. 다음 --all, --branches, --tags,
--remotes 또는 --glob은 그렇지 않으면 고려할 것입니다. 이 옵션의 반복이 누적됩니다.
다음 --all, --branches, --tags, --remotes 또는 --glob까지의 제외 패턴
옵션(다른 옵션이나 인수는 누적된 패턴을 지우지 않습니다).

주어진 패턴은 다음과 같은 경우 refs/heads, refs/tags 또는 refs/remote로 시작해서는 안 됩니다.
--branches, --tags 또는 --remotes에 각각 적용되며 다음으로 시작해야 합니다.
--glob 또는 --all에 적용되는 경우 refs/. 후행인 경우 /* 의도되었으므로 제공되어야 합니다.
명시 적으로.

--모호함=
이름이 주어진 접두사로 시작하는 모든 개체를 표시합니다. 그만큼 에 있어야합니다
모든 개체를 나열하지 않으려면 최소 4자리의 XNUMX진수 길이를 사용하세요.
실수로 저장소.

옵션 for 파일
--로컬-환경-vars
저장소에 로컬인 GIT_* 환경 변수를 나열합니다(예: GIT_DIR 또는
GIT_WORK_TREE(GIT_EDITOR는 아님). 변수 이름만 나열되고, 변수 이름은 나열되지 않습니다.
그 값은 설정되어 있더라도 마찬가지입니다.

--git-dir
정의된 경우 $GIT_DIR을 표시합니다. 그렇지 않으면 .git 디렉터리 경로를 표시합니다. 경로
표시된 경우 상대 항목은 현재 작업 디렉터리를 기준으로 합니다.

$GIT_DIR이 정의되지 않았고 현재 디렉터리가 Git에 있는 것으로 감지되지 않는 경우
저장소 또는 작업 트리는 stderr에 메시지를 인쇄하고 XNUMX이 아닌 상태로 종료됩니다.

--git-공통-디렉터리
정의된 경우 $GIT_COMMON_DIR을 표시하고, 그렇지 않으면 $GIT_DIR을 표시합니다.

--is-inside-git-dir
현재 작업 디렉터리가 저장소 디렉터리 아래에 있으면 "true"를 인쇄합니다.
그렇지 않으면 "거짓"입니다.

--is-in-work-tree
현재 작업 디렉토리가 저장소의 작업 트리 내부에 있는 경우 인쇄
"참", 그렇지 않으면 "거짓"입니다.

--is-bare-저장소
저장소가 베어 인쇄되면 "true"이고, 그렇지 않으면 "false"입니다.

--resolve-git-dir
다음 사항을 확인하세요. 유효한 저장소이거나 유효한 저장소를 가리키는 gitfile입니다.
저장소의 위치를 ​​인쇄합니다. 만약에 gitfile이고 해결되었습니다.
실제 저장소의 경로가 인쇄됩니다.

--git 경로
"$GIT_DIR/ 해결 "와 같은 다른 경로 재배치 변수를 사용합니다.
$GIT_OBJECT_DIRECTORY, $GIT_INDEX_FILE...을 고려합니다. 예를 들어,
$GIT_OBJECT_DIRECTORY는 /foo/bar로 설정된 다음 "git rev-parse --git-pathobjects/abc"로 설정됩니다.
/foo/bar/abc를 반환합니다.

--show-cdup
명령이 하위 디렉터리에서 호출되면 최상위 수준의 경로를 표시합니다.
현재 디렉터리를 기준으로 한 디렉터리(일반적으로 "../" 시퀀스 또는
빈 문자열).

--접두사 표시
명령이 하위 디렉터리에서 호출되면 현재 디렉터리의 경로를 표시합니다.
최상위 디렉터리에 상대적인 디렉터리입니다.

--쇼-톱레벨
최상위 디렉토리의 절대 경로를 표시합니다.

--공유 인덱스 경로
분할 인덱스 모드에서 공유 인덱스 파일의 경로를 표시하거나 그렇지 않은 경우 비어 있습니다.
분할 인덱스 모드.

기타 옵션
--이후=날짜 문자열, --이후=날짜 문자열
날짜 문자열을 구문 분석하고 해당 --max-age= 매개변수를 출력합니다. 자식
개정 목록.

--until=날짜 문자열, --before=날짜 문자열
날짜 문자열을 구문 분석하고 해당 --min-age= 매개변수를 출력합니다. 자식
개정 목록.

...
구문 분석할 플래그 및 매개변수입니다.

지정 개정


개정 매개변수 반드시 그런 것은 아니지만 일반적으로 커밋 개체의 이름을 지정합니다. 그것은 사용한다
무엇이라고 불리는가? extended SHA-1 통사론. 다음은 개체 이름의 철자를 지정하는 다양한 방법입니다. 그만큼
이 목록 이름의 끝 부분에 나열된 항목은 커밋에 포함된 트리 및 blob입니다.

, 예. dae86e1950b1277e545cee180551750029cfe735, dae86e
전체 SHA-1 객체 이름(40바이트 XNUMX진수 문자열) 또는
저장소 내에서 고유합니다. 예: dae86e1950b1277e545cee180551750029cfe735 및
dae86e 저장소에 다른 객체가 없으면 둘 다 동일한 커밋 객체의 이름을 지정합니다.
개체 이름이 dae86e로 시작합니다.

, 예. v1.7.4.2-679-g3bee7fb
git의 출력 설명; 즉, 가장 가까운 태그, 선택적으로 대시 및
커밋 수, 그 뒤에 대시, g, 약식 개체 이름입니다.

, 예. 석사, 헤드/마스터, 심판/헤드/마스터
상징적인 참조 이름입니다. 예: 석사 일반적으로 다음에서 참조하는 커밋 개체를 의미합니다.
심판/헤드/마스터. 우연히 둘 다 갖고 있다면 헤드/마스터태그/마스터당신은 할 수 있습니다
명시적으로 말하다 헤드/마스터 Git에게 당신이 의미하는 것이 무엇인지 알려줍니다. 모호할 때,
다음 규칙에서 첫 번째 일치를 취하여 명확해집니다.

1. 만약 $GIT_DIR/ 존재한다는 뜻입니다. (보통 유용할 경우에만 유용합니다.)
for HEAD, FETCH_HEAD, ORIG_HEAD, MERGE_HEADCHERRY_PICK_HEAD);

2. 그렇지 않으면, 심판/ 존재한다면;

3. 그렇지 않으면, 참조/태그/ 존재한다면;

4. 그렇지 않으면, 심판/헤드/ 존재한다면;

5. 그렇지 않으면, 심판/원격/ 존재한다면;

6. 그렇지 않으면, 심판/원격/ /머리 존재한다면.

HEAD 작업 트리의 변경 사항을 기반으로 한 커밋의 이름을 지정합니다.
FETCH_HEAD 원격 저장소에서 가져온 분기를 기록합니다.
마지막 git fetch 호출. ORIG_HEAD 이동하는 명령에 의해 생성됩니다. HEAD
과감한 방법으로 위치를 기록합니다. HEAD 수술하기 전에
가지 끝을 실행하기 전 상태로 쉽게 변경할 수 있습니다.
그들. MERGE_HEAD 브랜치에 병합할 커밋을 기록합니다.
git merge를 실행할 때. CHERRY_PICK_HEAD 당신이 커밋한 내용을 기록합니다.
git Cherry-Pick을 실행할 때 체리 따기.

다음 중 하나에 유의하세요. 심판/* 위의 경우는 다음 중 하나에서 발생할 수 있습니다. $GIT_DIR/참조
디렉토리 또는 $GIT_DIR/포장 참조 파일. 참조 이름 인코딩은
지정되지 않은 경우 일부 출력 처리에서는 참조 이름을 가정할 수 있으므로 UTF-8이 선호됩니다.
UTF-8.

@
@ 혼자가 바로가기 HEAD.

@{ }, 예. master@{어제}, 머리@{5 전에}
심판 뒤에 접미사가 붙는다. @ 중괄호 쌍으로 묶인 날짜 사양 포함
(예 : {어제}, {1 2 3 1 시간 1 전에} or {1979-02-26
18:30:00})는 이전 시점의 참조 값을 지정합니다. 이 접미사는
참조 이름 바로 뒤에만 사용해야 하며 참조에는 기존 로그가 있어야 합니다.
($GIT_DIR/로그/). 이는 귀하의 상태를 조회합니다. 지방의 주어진 심판
시간; 예를 들어, 당신의 지역에 무엇이 있었나요? 석사 지난주 지점. 보고 싶다면
특정 기간 동안 이루어진 커밋은 다음을 참조하세요. --부터--까지.

@{ }, 예. 마스터@{1}
심판 뒤에 접미사가 붙는다. @ 중괄호 쌍으로 묶인 서수 사양 포함
(예 : 1 {{}}, 15 {{}})는 해당 참조의 n번째 이전 값을 지정합니다. 예를 들어 마스터@{1}
의 직전 값은 다음과 같습니다. 석사 동안 마스터@{5} 의 5번째 사전 값입니다.
석사. 이 접미사는 참조 이름 바로 뒤에만 사용할 수 있으며 참조는 다음과 같아야 합니다.
기존 로그가 있습니다($GIT_DIR/로그/).

@{ }, 예. @{1}
당신은을 사용할 수 있습니다 @ reflog 항목을 얻기 위해 빈 참조 부분으로 구성합니다.
현재 지점. 예를 들어 지점에 있는 경우 blabla 그때 @{1} ~을 의미한다.
블라블라@{1}.

@{- }, 예. @{-1}
구조 @{- } 을 의미한다 현재 이전에 체크아웃된 번째 분기/커밋
하나.

@{업스트림}, 예. 마스터@{업스트림}, @{유}
접미사 @{업스트림} 지점 이름으로(약식 @{유})는
Branchname으로 지정된 분기가 그 위에 구축되도록 설정된 분기(구성됨)
지점으로. .remote 및 지점. .병합). 누락된 지점 이름의 기본값은 다음과 같습니다.
현재의 것.

@{푸시}, 예. 마스터@{푸시}, @{푸시}
접미사 @{푸시} git push가 실행되면 "우리가 푸시할 지점"을 보고합니다.
Branchname이 체크아웃된 동안(또는 현재 HEAD 지점 이름이 지정되지 않은 경우).
물론 푸시 대상이 원격 저장소에 있으므로 로컬을 보고합니다.
해당 분기에 해당하는 추적 분기(예: 심판/원격/).

더 명확하게 하기 위한 예는 다음과 같습니다.

$ git config push.default 현재
$ git config 원격.pushdefault myfork
$ git checkout -b mybranch 오리진/마스터

$ git rev-parse --symbolic-full-name @{upstream}
참조/원격/원본/마스터

$ git rev-parse --symbolic-full-name @{push}
심판/원격/myfork/mybranch

예제에서 삼각형 워크플로를 설정했다는 점에 유의하세요.
위치를 확인하고 다른 위치로 푸시합니다. 비삼각형 작업 흐름에서는 @{푸시} 와 동일합니다
@{업스트림}, 그럴 필요가 없습니다.

^, 예. 머리^, v1.5.1^0
접미사 ^ 개정 매개변수는 해당 커밋 객체의 첫 번째 부모를 의미합니다. ^
을 의미한다 번째 부모(예: ^ 에 해당하는 ^1). 특별한 규정으로는,
^0 커밋 자체를 의미하며 다음과 같은 경우에 사용됩니다. 태그의 개체 이름입니다.
커밋 개체를 참조하는 개체입니다.

~, 예. 마스터~3
접미사 ~ 개정 매개변수에 대한 커밋 객체는 일
첫 번째 부모만 따르는 명명된 커밋 개체의 세대 조상입니다. 즉
~3 에 해당하는 ^^ 이는 ^1^1^1. 자세한 내용은 아래를 참조하세요.
이 양식의 사용법을 보여주는 그림입니다.

^{ }, 예. v0.99.8^{커밋}
접미사 ^ 그 뒤에 중괄호 쌍으로 묶인 객체 유형 이름이 오면 역참조를 의미합니다.
의 개체 유형의 객체가 나올 때까지 재귀적으로 발견되거나 물건이
더 이상 역참조할 수 없습니다(이 경우 barf). 예를 들어, 하는
커밋 같은, ^{커밋} 해당 커밋 개체를 설명합니다. 마찬가지로, 만약
나무같고, ^{나무} 해당 트리 개체를 설명합니다. ^0 is
~에 대한 약칭 ^{커밋}.

개정^{객체} 확인하는 데 사용할 수 있습니다. 회전 없이 존재하는 물체에 이름을 붙인다.
요구하는 회전 태그가 되고 역참조하지 않고 회전; 태그는 이미
객체에 도달하기 위해 한 번이라도 역참조할 필요가 없습니다.

개정^{태그} 다음을 보장하는 데 사용될 수 있습니다. 회전 기존 태그 객체를 식별합니다.

^{}, 예. v0.99.8^{}
접미사 ^ 뒤에 빈 중괄호 쌍이 있으면 객체가 태그일 수 있음을 의미합니다.
태그가 아닌 개체를 찾을 때까지 태그를 반복적으로 참조 취소합니다.

^{/ }, 예. 머리^{/수정 추잡한 벌레}
접미사 ^ 개정 매개변수에 이어 텍스트가 포함된 중괄호 쌍이 옵니다.
슬래시로 표시하면 다음과 같습니다. :/고치다 추잡한 버그 반환한다는 점을 제외하고 아래 구문은
가장 어린 일치 커밋에서 연결할 수 있습니다. 전에 ^.

:/, 예. :/고치다 추잡한 버그
콜론, 슬래시, 텍스트 순으로 커밋 메시지가 있는 커밋의 이름을 지정합니다.
지정된 정규식과 일치합니다. 이 이름은 가장 최근에 일치하는 항목을 반환합니다.
모든 참조에서 도달할 수 있는 커밋입니다. 커밋 메시지가 다음으로 시작하는 경우 ! 당신
그걸 반복해야 해; 특별한 순서 :/!, 그 다음에는 !이다
지금은 예약되어 있습니다. 정규식은 커밋 메시지의 모든 부분과 일치할 수 있습니다. 에게
문자열로 시작하는 메시지를 일치시킵니다. 예를 들어 사용할 수 있습니다. :/^푸.

:, 예. 머리:읽어보기, :읽어주세요, 마스터:./README
접미사 : 그 뒤에는 tree-ish의 지정된 경로에 있는 blob 또는 트리의 이름을 지정하는 경로가 옵니다.
콜론 앞 부분으로 명명된 객체입니다. :길 (앞에 빈 부분이 있음)
콜론)은 다음에 설명된 구문의 특수한 경우입니다. 인덱스에 기록된 내용
주어진 경로에서. 다음으로 시작하는 경로 ./ or ../ 현재 작업에 상대적입니다.
예배 규칙서. 주어진 경로는 작업 트리의 루트를 기준으로 변환됩니다.
예배 규칙서. 이는 커밋이나 트리에서 블롭이나 트리를 처리하는 데 가장 유용합니다.
작업 트리와 동일한 트리 구조를 갖습니다.

: :, 예. :0:읽어주세요, :읽어주세요
콜론, 선택적으로 단계 번호(0~3) 및 콜론, 그 뒤에
path는 지정된 경로의 인덱스에 있는 blob 개체의 이름을 지정합니다. 누락된 단계 번호(그리고
그 뒤에 오는 콜론)은 0단계 항목의 이름을 지정합니다. 병합하는 동안 1단계는
공통 조상, 2단계는 대상 브랜치의 버전(일반적으로 현재 버전)입니다.
브랜치), 3단계는 병합되는 브랜치의 버전입니다.

다음은 Jon Loeliger의 그림입니다. 커밋 노드 B와 C는 모두 커밋의 부모입니다.
노드 A. 상위 커밋은 왼쪽에서 오른쪽으로 정렬됩니다.

기즈
\ / \ /
방어력
\ | / \
\ | / |
\|/ |
기원전
\
\
A

A = = A^0
B = A^ = A^1 = A~1
C = A^2 = A^2
D = A^^ = A^1^1 = A~2
E = B^2 = A^^2
F = B^3 = A^^3
G = A^^^ = A^1^1^1 = A~3
H = D^2 = B^^2 = A^^^2 = A~2^2
나 = F^ = B^3^ = A^^3^
J = F^2 = B^3^2 = A^^3^2

지정 범위


git log와 같은 기록 탐색 명령은 단일 커밋이 아닌 일련의 커밋에서 작동합니다.
저지르다. 이러한 명령에는 다음에 설명된 표기법을 사용하여 단일 개정을 지정합니다.
이전 섹션은 해당 커밋에서 도달할 수 있는 커밋 집합을 의미합니다.
조상 사슬.

커밋에서 도달할 수 있는 커밋을 제외하려면 접두사 ^ 표기법이 사용됩니다. 예: ^r1 r2 방법
다음에서 도달할 수 있는 커밋 r2 하지만 도달 가능한 항목은 제외하세요. r1.

이 설정 작업은 너무 자주 나타나므로 이에 대한 약어가 있습니다. 둘이 있을 때
위탁하다 r1r2 (위의 개정판 지정에 설명된 구문에 따라 이름이 지정됨)
r2에서 도달 가능한 커밋을 제외하고 rXNUMX에서 도달 가능한 커밋을 요청할 수 있습니다.
r1 으로 ^r1 r2 그리고 그것은 다음과 같이 쓸 수 있습니다 r1..r2.

유사한 표기법 r1...r2 의 대칭차라고 불린다. r1r2 그리고 다음과 같이 정의됩니다.
r1 r2 --아니다 $(자식 병합 기반 --모두 r1 r2). 도달 가능한 커밋 집합입니다.
둘 중 하나에서 r1 or r2 하지만 둘 다는 아닙니다.

이 두 가지 단축어에서는 한쪽 끝을 생략하고 기본값을 HEAD로 설정할 수 있습니다. 예를 들어,
기원.. 에 대한 속기 원산지 ..HEAD 그리고 "내가 포크한 이후로 무엇을 했는지 묻습니다.
원본 지점?" 마찬가지로, ..기원 에 대한 속기 머리..원산지 그리고 "그게 뭐였지?"라고 묻는다.
내가 포크한 이후로 출처가 어떻게 되나요?" .. 의미 할 것이다 머리..머리 그것은 비어있다
HEAD에서 도달할 수 있는 범위와 도달할 수 없는 범위입니다.

커밋과 그 상위 커밋으로 구성된 세트의 이름을 지정하는 다른 두 가지 약칭
존재하다. 그만큼 r1^@ 표기법은 다음의 모든 부모를 의미합니다. r1. r1^! 커밋을 포함합니다 r1 하지만 모두 제외
그 부모의.

요약하면 :


(즉, 상위 항목)에서 연결할 수 있는 커밋을 포함합니다. .

^
(즉, 상위 항목)에서 접근할 수 있는 커밋을 제외합니다. .

..
다음에서 연결할 수 있는 커밋을 포함합니다. 단, 접근 가능한 것은 제외하세요.
~에서 . 언제 또는 생략되면 기본값은 다음과 같습니다. HEAD.

...
다음 중 하나에서 접근할 수 있는 커밋을 포함합니다. 또는 하지만 그런 사람들은 제외하세요
두 곳 모두에서 접근할 수 있습니다. 언제 또는 생략되면 기본값은 다음과 같습니다. HEAD.

^@, 예. 머리^@
접미사 ^ 그 뒤에 at 기호가 오는 것은 해당 항목의 모든 상위 항목을 나열하는 것과 같습니다.
(즉, 상위 항목에서 접근할 수 있는 모든 항목을 포함하지만 커밋 자체는 포함하지 않습니다.)

^!, 예. 머리^!
접미사 ^ 느낌표가 뒤따르는 것은 커밋을 하는 것과 같습니다. 그리고
모든 상위 항목에는 접두사가 붙습니다. ^ 그들(및 그들의 조상)을 제외합니다.

다음은 몇 가지 예입니다.

DGHD
DFGHIJDF
^GDHD
^DBEIJFB
B..CC
B...CGHDEBC
^DBCEIJFBC
CIJFC
ㅋ^@ IJF
ㅋ^! 씨
에^! DGHDF

파셉트


--parseopt 모드에서는 자식 rev 구문 분석 옵션을 마사지하여 쉘 스크립트에 가져오는 데 도움이 됩니다.
C 내장 기능과 동일한 기능을 제공합니다. 옵션 노멀라이저로 작동합니다(예: 단일 분할
집계 값을 전환함), 약간 비슷합니다. getopt(1) 합니다.

구문 분석하고 이해하기 위해 옵션 사양을 표준 입력으로 사용합니다.
그리고 표준 출력에 다음에 적합한 문자열을 표시합니다. sh(1) 대체할 평가판
정규화된 것과의 논쟁. 오류 발생 시 표준 오류에 대한 사용량을 출력합니다.
스트리밍하고 코드 129로 종료됩니다.

참고: 결과를 eval에 전달할 때 결과를 인용해야 합니다. 예를 보려면 아래를 참조하세요.

입력 형성
자식 rev 구문 분석 --parseopt 입력 형식은 완전한 텍스트 기반입니다. 두 부분으로 나누어져 있습니다.
--만 포함하는 줄. 구분 기호 앞의 줄(하나 이상이어야 함)은 다음과 같습니다.
용도로 사용됩니다. 구분 기호 뒤의 줄은 옵션을 설명합니다.

각 옵션 줄의 형식은 다음과 같습니다.

* ? SP+ 도움말 LF


해당 형식은 짧은 옵션 문자이고 긴 옵션 이름은
반점. 두 부분 모두 필수는 아니지만 적어도 하나는 필요합니다. 포함하지 않을 수 있음
어느 것 하나 문자. h,help, dry-run 및 f는 올바른 예입니다.
.


*, =, ? 또는 !.

· 옵션이 인수를 취하는 경우 =를 사용하십시오.

· 사용 ? 이는 옵션이 선택적 인수를 취함을 의미합니다. 당신은 아마도
선택적 인수를 명확하게 구문 분석하려면 --stuck-long 모드를 사용하십시오.

· *를 사용하면 이 옵션이 생성된 사용법에 나열되지 않아야 함을 의미합니다.
-h 인수. 에 설명된 대로 --help-all에 대해 표시됩니다. 깃클리(7).

· 사용 ! 해당 부정 긴 옵션을 사용할 수 없도록 설정합니다.


, 지정된 경우 도움말 출력에서 ​​인수 이름으로 사용됩니다.
인수를 취하는 옵션. 첫 번째 공백으로 종료됩니다. 그것은
여러 단어로 구성된 인수 힌트에서 단어를 구분하기 위해 대시를 사용하는 것이 일반적입니다.

공백을 제거한 후 줄의 나머지 부분은 다음과 관련된 도움말로 사용됩니다.
옵션.

빈 줄은 무시되며, 이 사양과 일치하지 않는 줄은 옵션으로 사용됩니다.
그룹 헤더(의도적으로 이러한 줄을 만들려면 공백으로 줄을 시작하세요).


OPTS_SPEC="\
일부 명령 [옵션] ...

some-command는 foo와 bar를 수행합니다!
--
아, 도움말을 보여주세요

foo 멋진 옵션 --foo
bar= 멋진 옵션 --bar(인수 포함)
baz=arg 또 다른 멋진 옵션 --baz 명명된 인수 포함
qux?path qux는 경로 인수를 취할 수 있지만 그 자체로 의미가 있습니다.

옵션 그룹 헤더
씨? 선택적 인수가 있는 옵션 C"

eval "$(echo "$OPTS_SPEC" | git rev-parse --parseopt -- "$@" || echo 종료 $?)"

용법 본문
위 예에서 "$@"가 -h 또는 --help인 경우 다음 사용법 텍스트가 표시됩니다.

사용법: some-command [옵션] ...

some-command는 foo와 bar를 수행합니다!

-h, --help 도움말 표시
--foo 멋진 옵션 --foo
--bar ... 멋진 옵션 --bar 인수 포함
--baz 또 다른 멋진 옵션 --baz 명명된 인수가 포함됨
--qux[= ] qux는 경로 인수를 취할 수 있지만 그 자체로 의미가 있습니다.

옵션 그룹 헤더
-C[...] 선택적 인수가 있는 옵션 C

SQUOTE


--sq-quote 모드에서는 자식 rev 구문 분석 표준 출력에 적합한 단일 라인을 에코합니다.
sh(1) 평가. 이 줄은 --sq-quote 다음에 오는 인수를 정규화하여 만들어집니다. 아무것도 아님
인수를 인용하는 것 외에는 완료됩니다.

명령 입력이 평소와 같이 해석되기를 원하는 경우 자식 rev 구문 분석 이전
출력은 쉘 인용으로 표시됩니다. --sq 옵션을 참조하세요.


$ 고양이 >your-git-script.sh <<\EOF
#!/ 빈 / SH
args=$(git rev-parse --sq-quote "$@") # 사용자가 제공한 인수 인용
command="git frotz -n24 $args" # 손수 만든 내부에서 사용합니다.
# 명령줄
평가 "$ 명령"
EOF

$ sh your-git-script.sh "a b'c"

사용 예


· 현재 커밋의 개체 이름을 인쇄합니다.

$ git rev-parse --HEAD 확인

· $REV 쉘 변수의 개정판에서 커밋 개체 이름을 인쇄합니다.

$ git rev-parse --$REV^{커밋} 확인

$REV가 비어 있거나 유효한 개정판이 아닌 경우 오류가 발생합니다.

· 위와 유사:

$ git rev-parse --기본 마스터 --$REV 확인

그러나 $REV가 비어 있으면 마스터의 커밋 개체 이름이 인쇄됩니다.

GIT


의 일부 자식(1) 스위트

onworks.net 서비스를 사용하여 온라인으로 git-rev-parse 사용


무료 서버 및 워크스테이션

Windows 및 Linux 앱 다운로드

  • 1
    Alt-F
    Alt-F
    Alt-F는 무료 오픈 소스를 제공합니다.
    DLINK용 대체 펌웨어
    DNS-320/320L/321/323/325/327L and
    DNR-322L. Alt-F에는 Samba와 NFS가 있습니다.
    ext2/3/4 지원...
    Alt-F 다운로드
  • 2
    usm
    usm
    Usm은 통합 슬랙웨어 패키지입니다.
    자동으로 처리하는 관리자
    종속성 해결. 그것은 통일한다
    다음을 포함한 다양한 패키지 저장소
    슬랙웨어, 슬랙키, 피...
    다운로드
  • 3
    Chart.js
    Chart.js
    Chart.js는 Javascript 라이브러리입니다.
    디자이너와 개발자가 그림을 그릴 수 있습니다.
    HTML5를 사용하는 모든 종류의 차트
    캔버스 요소. Chart js는 훌륭한 기능을 제공합니다.
    배열 ...
    Chart.js 다운로드
  • 4
    JasperReports 용 iReport-Designer
    JasperReports 용 iReport-Designer
    참고: iReport/Jaspersoft Studio 지원
    공지: 버전 5.5.0부터,
    Jaspersoft Studio가 공식적으로
    JasperReports용 디자인 클라이언트. iReport
    의지...
    JasperReports용 iReport-Designer 다운로드
  • 5
    설치 후 F
    설치 후 F
    PostInstallerF는 모든
    Fedora Linux 및 기타 소프트웨어
    기본적으로 다음을 포함하지 않습니다.
    처음으로 Fedora를 실행합니다. 그것의
    쉽게...
    PostInstallerF 다운로드
  • 6
    추적하다
    추적하다
    strace 프로젝트가 다음 위치로 이동되었습니다.
    https://strace.io. strace is a
    진단, 디버깅 및 교육
    Linux용 사용자 공간 추적기. 그것은 사용
    모니터하기 위해...
    다운로드
  • 더»

Linux 명령

Ad