2014-10-31 4 views
2

처음에 브랜치에서 A를 사용하고 git stash save <message>을 사용하여 브랜치의 일부 변경을 숨겼습니다. 그 지점에서 일을 마치면 다른 지점 B로 전환 한 다음 지점 A에 있다고 생각하고 잘못 입력하여 git stash apply을 입력했습니다. 이로 인해 지점 B의 파일 몇 개가 충돌하게되었습니다.다른 브랜치에 git 숨김을 잘못 적용했습니다.

git checkoutgit reset HEAD 해당 파일에 있지만 파일이 병합되지 않았으며 내 지사를 원래 상태로 되돌릴 수 없다고 말합니다.

브랜치 B를 원래 상태로 가져 오거나 브랜치 B에 잘못 적용한 방법을 사용할 수 있습니까?

업데이트 : 최신 답변에 따라 git reset HEAD를 실행 한 다음 git checkout을 실행하면 문제가 해결됩니다. 필자의 경우처럼 여러 파일이 목록에있는 경우 시간이 많이 걸릴 수 있습니다. 단 한 번의 시도로 이러한 모든 변경 사항을 취소 할 수있는 더 좋은 방법이 있습니까? 병합되지 않은 파일의 경우

답변

1

당신은 당신이해야 할 변경하지 않으려면 :

git reset HEAD <filename> 
git checkout -- <filename> 

힘내는 항상 다른 상태로 파일을 얻기 위해 무엇을 설명을 (변경 사항을 취소, 준비에 추가) 할 때 git status. 대부분의 경우 화면의 지시 사항을 따르면 도움이됩니다.

마지막 커밋 HEAD의 상태로 전체 분기를 얻으려면 :

git reset HEAD . 
git checkout -- . 
+0

자식 체크 아웃을하는 - 은 "경로 를보고 자식을 만드는 (도트 모든 현재 작업 디렉토리에 의미 [.]) 병합되지 않았습니다. " git status를 실행하면 모든 파일 목록이 "모두 수정 됨"으로 표시됩니다. 각 파일을 실행하지 않고 한 번에 숨김을 되돌릴 수 있습니까? –

+0

고마워 ... 작동 했어. 내가 실수로 잘못 주문했을 수 있습니다. –