2013-02-20 3 views
1

분기 된 파일 중 하나를 원본 분기점으로 병합하는 가장 좋은 방법은 무엇인지 알고 싶습니다. 그러나 변경된 파일을 모두 밀어 넣지 않으려 고합니다. 많은 변경된 파일을 병합 할 준비가되지 않았습니다. 예를 들어, 내 지점에서 변경된 3 개의 파일 대신 1 개의 변경된 파일 만 병합 할 수 있습니까? 당신이 tortoisegit의 특정 설정에 병합하고 싶지 않은 것을 설정하는 방법이 있습니까?tortoisegit 분기 작업 및 원본과의 병합

답변

2

예, 가능합니다.

먼저 원격 원본 분기를 정확하게 미러링하는 로컬 분기를 만들어야합니다. 커맨드 라인 커맨드를 알려 드리겠습니다 만 물론 Tortoise Git을 사용할 수도 있습니다. 우리는 임시 로컬 브랜치의 이름으로 'tmp'를 사용하고 현재 작업중인 로컬 브랜치로 'src'를 사용하고 원격 브랜치 이름은 remotebranchname이라고 가정합니다.

$ git fetch origin 
$ git branch -b tmp origin/remotebranchname 

다음으로 하나의 변경된 파일이 있습니다. 해당 파일에 대한 변경 사항으로 멋진 단일 커밋을 만든 경우 'cherry-pick'을 사용하여이 커밋 만 전송할 수 있습니다. 그래서 저는 우리가 새로운 하나를 만들어, 당신은 하나에 해당 변경 사항 커밋하지 않은 가정합니다 :

$ git checkout src mychangedfile 

이것은 당신의 TMP 지점에 변경된 파일을 가져옵니다. 이제 새로운 커밋을 만들 수 있고 마지막으로이 브랜치를 origin/remotebranch로 푸시 할 수 있습니다.

한 가지 덧붙여서, 나는 Git Extensions을 시도해 보길 권한다. Git을 사용하면 Windows에서 Git Extensions를 사용하는 것이 Tortoise Git보다 쉽습니다.

+0

windows gui를 사용합니다. 저장을 숨김으로써 쉽게 할 수있는 방법을 찾았습니다. 이것은 변경된 파일을 숨기고 하나의 파일을 편집하고 커밋하고 다시 마스터로 푸시 할 수 있습니다. 그 후에, 은신처를 다시 불러올 수 있습니다. – user1929393

+0

Stash는 변경하는 동안 아무 것도 저 지르지 않았다고 가정합니다. 자주 커밋하는 것은 좋은 습관이며, 숨김에 의존하는 것이 차선책의 워크 플로를 선호 할 수 있습니다. – Wilbert