Git에서 현재 체크아웃된 커밋 찾기
저는 지금 한창입니다.git bisect
회기의
현재 사용 중인 커밋(SHA1 해시)을 확인하는 명령은 무엇입니까? git status
에서는 이 기능을 제공하지 않습니다.
편집: 전화하는 것 같습니다.git log
그리고 첫 번째 진입 작품을 보는 것은?
현재 작업 복사본에 체크아웃한 커밋을 볼 수 있는 최소 5가지 방법이 있습니다.git bisect
세션(이등분하지 않을 때도 옵션 1-4가 작동함):
git show
.git log -1
.- Bash 프롬프트.
git status
.git bisect visualize
.
아래에서 각 옵션에 대해 자세히 설명하겠습니다.
옵션 1: git show
현재 체크아웃한 커밋을 결정하는 방법에 대한 일반적인 질문에 대한 이 답변에서 설명한 바와 같이, 다음 기간 동안만 체크아웃한 것은 아닙니다.git bisect
), 를 사용할 수 있습니다.git show
와 함께-s
패치 출력을 억제하는 옵션:
$ git show --oneline -s
a9874fd Merge branch 'epic-feature'
옵션 2: git log -1
또한 간단히 할 수 있습니다.git log -1
현재 어떤 임무를 수행하고 있는지 확인할 수 있습니다.
$ git log -1 --oneline
c1abcde Add feature-003
옵션 3: Bash 프롬프트
Git 버전 1.8.3+(또는 이전 버전이었습니까?)에서는 작업 복사본에 체크아웃한 현재 분기를 표시하도록 Bash 프롬프트가 구성되어 있으면 이등분 세션 중 또는 "분리 HEAD" 상태일 때 체크아웃한 현재 커밋도 표시됩니다.아래의 예에서, 나는 현재 다음을 가지고 있습니다.c1abcde
체크아웃됨:
# Prompt during a bisect
user ~ (c1abcde...)|BISECTING $
# Prompt at detached HEAD state
user ~ (c1abcde...) $
옵션 4: git 상태
또한 Git 버전 1.8.3+ (그리고 아마도 더 이전, 다시 확실하지 않음), 실행 중git status
또한 이등분 중에 체크아웃한 커밋과 분리된 HEAD 상태에 있을 때도 표시됩니다.
$ git status
# HEAD detached at c1abcde <== RIGHT HERE
옵션 5: git 이등분 시각화
마지막으로, 당신이 하는 동안.git bisect
또는 기본 제공 별칭을 사용할 수도 있습니다.git bisect view
시작하기 위해gitk
사용자가 어떤 커밋에 참여하고 있는지, 그리고 지금까지 어떤 커밋을 불량 및 양호로 표시했는지 그래픽으로 볼 수 있습니다.버전 1.8.3보다 훨씬 이전에 존재했던 것으로 확신합니다. 어떤 버전에 도입되었는지는 잘 모르겠습니다.
git bisect visualize
git bisect view # shorter, means same thing
다음을 수행할 수 있습니다.
git rev-parse HEAD
좀 더 자세히 설명하자면,git rev-parse
isgit의 기본 명령어는 커밋의 이름을 지정할 수 있는 이국적인 방법을 해석하기 위한 것입니다.HEAD
현재 커밋 또는 분기에 대한 참조입니다. (의 경우)git bisect
세션은 분기가 아닌 커밋("분리된 HEAD")을 직접 가리킵니다.
또는 다음을 수행하는 것이 좋습니다(기억하기 쉽습니다).
git show
▁commit다▁the니▁which▁defaults▁showing표시라는 커밋을 표시합니다.HEAD
을 가리키고 있습니다.보다 간결한 버전의 경우 다음을 수행할 수 있습니다.
$ git show --oneline -s
c0235b7 Autorotate uploaded images based on EXIF orientation
git rev-parse HEAD273cf91b4057366a560b9ddcee8fe58d4c21e6cb
업데이트:
또는(태그가 있는 경우):
(버전 이름을 지정하기에는 좋지만 git로 되돌리기에는 별로 좋지 않습니다.)
git 묘사v0.1.49-localhost-ag-1-g273cf91
또는 (Mark가 제안한 대로, 완성도를 위해 여기에 나열):
git show --한줄-s.c0235b7 EXIF 방향에 따라 업로드된 이미지 자동 회전
간단한 정보만 추출하려면 다음을 사용하여 얻을 수 있습니다.git show
--format=<string>
옵션...그리고 당신을 곤란하게 하지 말라고 부탁합니다.--no-patch
일 수 수 것을 합니다. 즉, 단필드인경우많가은일형다식의는대니있하로습수얻원을을력출f▁this,즉f-다단니있습일드필수▁output▁of▁you얻을대로▁means는▁print▁get▁a▁canstyle▁you,▁whatever▁field▁want▁often▁be▁single▁which.
를 들어,를들 어예가, 져면려오만해시단축▁(면▁(려▁the)만,%h
) 다음과 같이 말할 수 있습니다.
$ git show --format="%h" --no-patch
4b703eb
bash(사람들이 원하는 가능성이 높은 작업)의 환경 변수에 저장하려는 경우 다음 구문을 사용할 수 있습니다.
$ GIT_COMMIT="$(git show --format="%h" --no-patch)"
$ echo $GIT_COMMIT
4b703eb
수행할 수 있는 작업의 전체 목록은 에 있습니다. 그러나 유용할 수 있는 속성의 간략한 목록은 다음과 같습니다.
%H
를 .%h
commit hash 해시약%T
hash 나시해%t
약어 트리 해시%P
해시%p
부모%an
%ae
이메일%at
날짜,, UNIX 타임스탬프%aI
날짜,한 ISO , ISO 8601 형식%cn
%ce
%ct
날짜,, UNIX 타임스탬프%cI
8601 , ISO 8601 형식%s
%f
파일 줄%gD
선택기reflog 파일: refs/stash@{1})%gd
선택기는 reflog 파일(예: stash@{1})입니다.
사용하다git show
또한 커밋 메시지를 표시하고 인수가 지정되지 않은 경우에는 현재 커밋으로 기본 설정됩니다.
언급URL : https://stackoverflow.com/questions/11168141/find-which-commit-is-currently-checked-out-in-git
'programing' 카테고리의 다른 글
동적 SQL 결과를 변수에 할당 (0) | 2023.07.18 |
---|---|
Firebase 배포가 JS 파일을 업데이트하지 않음 (0) | 2023.07.08 |
의 Oracle 연결 풀링.그물 (0) | 2023.07.08 |
VBA 양식 텍스트 상자에 숫자만 허용(+, - 및 . 포함) (0) | 2023.07.08 |
R에서 %>%는 무엇을 의미합니까? (0) | 2023.07.08 |