이전 브랜치를 git checkout하는 방법이 있습니까?
나는 일종의 cd -
git에 해당하는 것을 원합니다 . 내가 지점에 master
있고 체크 아웃을 foo
한다면, 나는 git checkout -
돌아가고 싶은 master
것을 타이핑 할 수 있고, 돌아갈 때 다시 타이핑 할 수 있기를 바랍니다 foo
.
이와 같은 것이 있습니까? 구현하기 어려울까요?
로부터 1.6.2에 대한 릴리스 노트
@{-1}
마지막 분기를 참조하는 방법입니다. 이는
객체 이름이 예상되는 곳뿐만 아니라 분기 이름이 예상되는 모든 곳에서 허용되며 마치 분기 이름을 입력 한 것처럼 작동합니다.
예 :git branch --track mybranch @{-1}
,,git merge @{-1}
및
git rev-parse --symbolic-full-name @{-1}
예상대로 작동합니다.
과
git checkout -
는git checkout @{-1}
.
오늘날이를 수행하는 가장 간단한 방법은 다음과 같습니다.
git checkout -
... 다음의 별칭입니다.
git checkout @{-1}
이에 대해 더 알고 싶다면 여기에 전체 기사를 썼습니다. Checkout The Previous Branch In Git .
@Karl이 지적하고 git checkout
매뉴얼에서 :
특별한 경우, N 번째 마지막 분기의 "@ {-N}"구문은 분리하는 대신 분기를 체크 아웃합니다. "@ {-1}"과 동의어 인-를 지정할 수도 있습니다.
이 경우 git checkout -
및 둘 다 git checkout @{-1}
작동합니다.
내가 믿는 가장 가까운
git reflog
최신 moving from branch1 to branch2
및
구문 분석
git checkout branch1
git checkout @{-N}
작동 하는 메커니즘을 이해하기 위해 이전 답변에 더 자세한 정보를 추가하십시오 . 그것은 당신이 당신의 출력을 구문 분석 할 수 있어야 자신에 비슷한 구현하고 싶었 그렇다면, 체크 아웃 역사를 검사 할 reflog를 산책 git reflog
을 찾고 checkout:
라인. git 소스 sha1_name.c
, 특히 함수 에서 구현을 확인할 수 있습니다 interpret_nth_prior_checkout
.
나는 이전 지점을 확인하기 위해 같은 생각 으로이 질문에 착수했습니다. 에서 ohmyz 를 사용 하고 Mac
있습니다. 아래 명령이 나를 도왔습니다.
$ gco -
$ git checkout -
가장 많이 사용되는 솔루션은 다음과 같습니다.
git checkout @{-N}
여기서 N-결제 내역에서 다시 이동할 지점의 단계 수입니다.
다음은 다른 답변에서 제공 하는 git checkout -
및 git checkout @{-1}
솔루션 을 설명하는 Git 문서의 일부에 대한 포인터입니다 .
When specifying a Git revision for any command,
@{-<n>}
, e.g.@{-1}
means “the nth branch/commit checked out before the current one.” The documentation forgit checkout <branch>
reiterates: “You can use the@{-N}
syntax to refer to the N-th last branch/commit checked out usinggit checkout
operation.”For the
<branch>
argument ofgit checkout
, “you may also specify ‘-
’ which is synonymous to ‘@{-1}
’.”
Git version 2.23
introduced the git switch
command which you can use to do that (and more). Quoting the official documentation:
Switch to a specified branch. The working tree and the index are updated to match the branch. All new commits will be added to the tip of this branch.
특정 경우 git switch -
에는 이전에 있었던 지점으로 돌아가도록 발행 할 수 있습니다 . 동일한 명령을 다시 실행하여 첫 번째 분기로 돌아갈 수 있습니다.
PS 그것은 당신이 이미 (난 당신이 질문을 이후 7 년이있어 의미) 그렇게하는 방법을 알고하지 않는 것이 아니지만, 공통의 해결이 명령이 적은 초보자 혼란과 친절 혼란을 사용할 때 발생한다 git checkout
.
참고 URL : https://stackoverflow.com/questions/7206801/is-there-any-way-to-git-checkout-previous-branch
'Development Tip' 카테고리의 다른 글
'if'문에서 여러 줄 조건을 스타일링합니까? (0) | 2020.10.02 |
---|---|
HTML5를 사용하는 사용자 정의 데이터 속성에 대한 jQuery 선택기 (0) | 2020.10.02 |
Git에 푸시하여 오류 코드 403을 반환하며 치명적 : HTTP 요청이 실패했습니다. (0) | 2020.10.02 |
OPTIONS 경로에 CORS 헤더를 추가하면 브라우저가 내 API에 액세스 할 수없는 이유는 무엇입니까? (0) | 2020.10.02 |
소수점 이하 두 자리로 반올림하는 방법 (페이지 출력용) (0) | 2020.10.02 |