2013-06-14 2 views
0

topic 브랜치에있는 로컬 브랜치에 몇 가지 업데이트가 있습니다.이 브랜치에서 파일 a.txt을 업데이트했으나 실행하지 않았고 커밋하지 않았지만 다른 사람이 만든 새로운 커밋이 표시됩니다(). 버전 트리에서 위로 말하면 veresion3이고, version4은 새로운 페치 된 커밋이고, a.txt 파일에 변경 사항이있는 경우 versi on4에있는 모든 변경 사항을 사용하고 변경 내용을 파일 a.txt에 던지고 싶습니다. 이? a.txt에서다른 사람들로부터 최신 변경 사항을 얻는 방법과 내 지사에서 변경 사항을 사용하지 않는 방법은 무엇입니까?

답변

1

던져 멀리 변경 :

git checkout a.txt 

이 지점에서 새로운 커밋을 가져 오기 :

git merge origin/master 

(다른 사람에 의해 변경 사항을 가정 마스터에있는)

+0

동안 나는 파일 a.txt의 변경 사항을 사용하고 싶습니다. 따라서 변경 사항을 마스터에 병합하고 싶지 않습니다. – user2131316

+0

@ user2131316 당신은 'a.txt'의 변화, 안돼요? – ouah

+0

예, 변경 사항을 a.txt에 버리려고합니다. 그러나 새 커밋에서 가져온 업데이트를 사용하려면 먼저 마스터에 아무 것도 보내지 않으려합니다. – user2131316

0

위해에 a.txt의 현재 상태를 version4에서 복사하려면 다음 명령을 사용하십시오.

$ git checkout origin/master a.txt 

여기에서는 origin/master가 version4을 가리킨다 고 가정합니다.

  1. 가 작업 공간에 a.txt 파일의 unstaged/커밋되지 않은 내용을 대체
  2. 가 병합을 만들거나 단지 사본의 스냅 샷을 version4에 무엇을 통합하지 않습니다

    이 두 가지를 할 것입니다 a.txt

참고 :이 명령을 수행 한 후에도 a.txt 파일을 로컬로 커밋해야합니다.
참고 : a.txt을 디렉터리 경로로 바꾸면 디렉터리 아래에있는 모든 파일을 로컬 작업 영역으로 복사 할 수 있습니다.

관련 문제