2011-11-04 7 views
6

Windows XP에서 TortoiseGit 클라이언트를 사용하고 있습니다. 특정 폴더에는 3 개의 수정 된 파일이 있으며, 수정 한 내용은 휴지통에 넣으려고합니다. 즉, 원격 저장소에서이 세 파일의 최신 버전을 확인하고 싶습니다. 같은 디렉토리에 다른 수정 된 파일이 있다는 것을 기억하십시오. 이 3 개의 파일 만 최신 버전으로 가져 오려면 어떻게합니까? -git : 특정 파일 만 가져 오기

감사 데이브

답변

8

는 경로 이름 있는 체크 아웃 HEAD에 영향을주지 않습니다

주 (예 : 자식 복제 후) 원격/지사 이름을 기본 상류 가정

git checkout origin/master -- file1 path/file2 path/file3 

을 그 세 개의 명명 된 파일은 경고없이 을 덮어 씁니다. 에 대해 커밋되지 않은 로컬 변경 사항이 있으면이 이름이 지정된 파일이 손실됩니다.

+0

로컬 리포지토리 또는 원격 서버에서 체크 아웃을 수행합니까? – Dave

+0

@Dave : 당신이 이름을 붙인 레퍼런스 (이 경우에는 _branch_'origin/master')에서 파일을 얻습니다. 대부분의 경우이 명령은 기본 원격 브랜치 (예 :'git pull '과 함께 사용되는 이름)의 적절한 이름입니다.). 어떤 원격 브랜치가 있는지 보려면'git branch -r'을 입력하십시오. – sehe

2

프로젝트 루트에서 컨텍스트 메뉴를 호출합니다 (마우스 오른쪽 버튼을 클릭하면 오른손 잡을 수 있습니다 ;-).

선택 TortoiseGit > Revert...

되돌리기 대화 상자가 수정 한 저장소에있는 모든 파일을 보여줍니다. 확인란을 선택한 다음 확인을 눌러 되돌리려는 옵션을 선택할 수 있습니다.

이렇게하면 선택한 파일이 원래 상태로 복원됩니다.

그런 다음 TortoiseGit 컨텍스트 메뉴의 끌어 오기 ... 작업을 사용하여 공유 저장소에서 이러한 파일의 최신 버전을 가져올 수 있습니다 (물론 로컬에있는 다른 변경 사항을 커밋/숨기기를 원할 수도 있습니다).

+0

다른 변경 사항을 커밋/숨기고 싶지 않으면 어떻게합니까? 난 그냥 원격 저장소에서 문제의 3 파일을 업데이 트하고 다른 모든 것을 유지하고 싶습니다. – Dave

+0

@Dave TortoiseGit 메뉴에서도이 작업을 수행 할 수 있습니다. 해당 파일을 선택하고 ** Diff ** 작업을 선택하기 만하면됩니다. TortoiseGit은 다른 파일을 보여줍니다. _what_가 변경되었음을 확인하려면 두 번 클릭하여 각 파일을 드릴 할 수 있습니다. 그런 다음 변경 사항을 수락하거나 거부 할 수 있습니다. –

관련 문제