2013-12-19 4 views
2

git stash pop 바로 뒤에 git stash이 충돌하는 이유는 무엇입니까?git 숨김 결과가 충돌하는 이유는 무엇입니까?

$ git stash --keep-index 
$ git stash pop 

을하고 자식은 나를 충돌을 해결하기 위해 요청 :

그래서 내가 그랬어.

내가 잘못 했습니까? 어떻게하면 무단 파일을 숨기고 (programm 테스트) 모든 것을 되돌릴 수 있습니까? (즉, 모든 준비된 파일을 그대로두고 unstaged 파일을 다시 가져와 unstaged 상태로 만들었습니까?)

+3

왜 '--keep-index'를 사용하나요? – Claudio

+0

@Claudio, 숨겨진 변경 사항 만있는 프로그램을 테스트합니다. – klm123

답변

5

문제의 범위는 --keep-index입니다. 숨긴 변경 사항은 이미 수행 한 변경 사항과 충돌합니다. 여기

이 솔루션은 사용하지 않는 것입니다 ... 당신은 줄이나 바즈 푸에 존재하는지 여부를 모르는 경우의 자식에

echo bar > foo 
git add foo 
echo baz > foo 
git stash --keep-index 
git stash pop #CONFLICT 

를 재현하는 데 사용할 수있는 명령입니다 --keep-index 인수를 사용하거나 먼저 추가 한 변경 사항을 커밋 (나중에 커밋을 수정할 수 있습니다)

git stash branch <branchname>을 사용하기 전과 동일한 상태로 작업 디렉토리를 가져올 수 있습니다. 그러면 br 디렉토리를 병합해야합니다. 앵커)

+0

그래서 git stash --keep-index는 스테이지 영역이 아닌 리포지토리에 상대적인 변화를 보여줍니다. 숨겨진 변경 사항에는 무단 변경과 단계별 변경이 모두 포함됩니다. – klm123

+0

git stash는 전체 작업 디렉토리에서 작동합니다. – Fredszaq

관련 문제