1.8.3에서 숨김 팝 특정 숨김을 얻는 방법은 무엇입니까?


290

방금 Git을 업그레이드했습니다. Git 버전 1.8.3에 있습니다.

오늘 아침 나는 스택의 깊은 곳에서 변화를 풀려고했습니다.

나는 git stash pop stash@{1}이 오류가 발생했습니다.

치명적 : 모호한 인수 'stash @ 1': 작업 트리에없는 알 수없는 개정 또는 경로. '-'를 사용하여 경로를 수정본에서 분리하십시오. 'git [...]-[...]'

나는 이것에 대해 약 20 가지 이상의 변형을 시도했지만 성공하지 apply않고 대신 사용 했습니다 pop. 무엇이 바뀌 었습니까? 다른 사람이 이것을 경험?


2
{}의 탈출을 시도 했습니까?
AlexDev

20
힘내 2.11 (Q4 2016), 당신은 지금 사용할 수 있습니다 git stash pop 1참조 : 아래 내 대답을
VonC

답변:


360
git stash apply n

자식 버전 2.11부터 작동

셸 이스케이프가 포함 된 이전 구문의 문제를 디버깅하는 데 도움이 될 수있는 원문 :

앞에서 지적했듯이 중괄호는 OS, 쉘 등에 따라 이스케이프 또는 인용이 필요할 수 있습니다.

무엇이 잘못 될 수 있는지에 대한 자세한 힌트와 다양한 쉘 및 플랫폼에서이를 해결하는 방법에 대해서는 " stash @ {1}이 모호합니까? "를 참조하십시오 .

git stash list
git stash apply stash@{n}

자식 숨김 적용 버전


15
이 대답에 대한 유일한 장점은 질문 pop에 특정 숨김 에 대한 방법을 묻고이 명령 apply은 숨기지 않고 숨김을 유지한다는 것입니다. 차이점은 팝이 코드에 숨김을 적용하고 숨김 자체를 삭제한다는 것입니다.
그랜트 험프리스

나를 위해 작동하지 않습니다. "알 수없는 옵션 : -encodedCommand"오류 발생
Yuvraj Patil


답변을 업데이트하십시오.git stash apply n
Hafiz Temuri

179

중괄호를 탈출해야합니다.

git stash pop stash@\{1\}

78

구문에 대한 따옴표를 다룰 필요 가 없도록stash@{x} 하려면 Git 2.11 (2016 년 4 분기)을 사용하십시오.

Aaron M Watson ( )의 commit a56c8f5 (2016 년 10 월 24 일)를 참조하십시오 . (의해 병합 - Junio C 하마노 -9fa1f90 커밋 2,016 31 시월)watsona4
gitster

stash: 스 태쉬를 인덱스 만 참조하도록 허용

" stash@{n}"을 명시 적으로 참조하는 대신 단순히 " n" 로 참조 할 수 있습니다 .
대부분의 사용자는 숨김 스택에서 자신의 위치에 따라 숨김을 참조합니다 (여기서는 "인덱스"라고 함).

일반적인 숨김에 대한 구문 (stash@{n} )에 은 약간 성 가시고 잊기 쉽고 때로는 스크립트에서 제대로 탈출하기가 어렵습니다 .

이 때문에 단순히 인덱스를 참조하여 숨김으로 작업을 수행하는 기능이 바람직합니다.

그래서:

git stash drop 1
git stash pop 1
git stash apply 1
git stash show 1

5
감사! 이것은 아마도 2019
Aaron Frary


16

Robert가 지적했듯이 따옴표는 다음과 같은 트릭을 수행 할 수 있습니다.

git stash pop stash@"{1}"

12

위의 작업 중 어느 것도 작동하지 않으면 숨김 자체 주위의 따옴표가 도움이 될 수 있습니다.

git stash pop "stash@{0}"

4

2.22가 설치되어 있으며 작동했습니다 ..

git stash pop --index 1

작동하지 않습니다. $ git stash pop --index 1 치명적 : 모호한 인수 '1': 알 수없는 개정 또는 경로가 작업 트리에 없습니다. '-'를 사용하여 경로를 다음과 같이 수정본에서 분리하십시오. 'git <command> [<revision> ...]-[<file> ...]'
Dave Doga Oz

2

버전 2.11+는 다음을 사용합니다.

git stash list

git stash apply n

n은 숫자 stash @ {12}입니다.


1

먼저 목록을 확인하십시오.

git stash list

숨김 목록에서 팝업하려는 색인을 복사하십시오.

git stash pop stash@{index_number}

예 :

git stash pop stash@{1}
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.