2012-09-26 4 views
0

git에 새로운 기능이므로 멍청한 질문 일 수 있습니다.GIT에서 특정 파일을 동기화하는 방법

나는 두 개의 다른 브랜치를 가진 자식에서 일하고있다. (A와 B라고 부르 자.) 하나의 파일 유형을 제외하고 두 브랜치 모두 프로젝트의 다른 부분에서 작업 중이다.

브랜치 A에서 작업하는 누군가가 해당 파일을 수정하고 커밋 한 후 수정 사항을 푸시하면 브랜치 B에서 근무하는 다른 사람이 수정 된 파일을 갖게됩니다 (예 : ). 지점 B에서.

이것을 달성하기위한 워크 플로우는 무엇입니까?

답변

0

좋아, 내가 당신을 설명하자

힘내 기본 워크 플로우가 가지를 사용하고 있습니다. 따라서 지점 A에서 작업 중이며 지점 B에서 작업하고 있다고 가정 해 보겠습니다.

분기 (A)에서 파일을 변경하면 변경 내용을 커밋하고 밀어 넣습니다. 원격 저장소를 가져 와서 가져 와서 원격 저장소의 변경 사항을 로컬 저장소에 가져와야합니다. 하지만 그 후에는 지점 (A)을 내 지점 (B)과 병합하여 내 지점에서 변경 사항을 가져와야합니다. 그래

User 1 on branch(A)-some modified files 
User 1 on branch(A)-commit those changes to local repo 
User 1 on branch(A)-push the commited changes to remote repo 

User 2 on branch(B)-fetch and pull the remote repo to grab any new commit that was pushed. 
User 2 on branch(B)-merge the branch(A) into my branch(B). Now i have your changes. 
+0

하지만, 유일한 문제는 내가 병합 할 필요가 일부 특정 파일이 분기 B.에 전체 지점 A를 병합 있지만 수 없다는 것입니다 :

기본적인 흐름은 나머지! – darkheir

+1

여기에 svn과 git의 차이점이 있습니다. 힘내 각 파일의 스냅 샷을 저장하므로 두 파일이 동일한 경우이 파일은 병합되지 않습니다. git에서 두 개의 분기를 병합 할 때 차이점 만 다른 것으로 옮겨집니다. 체리 피크라는 고급 기능이있어 커밋에서 특정 파일을 선택할 수 있습니다. 그러나 기본적으로 mergin이 분기 할 때 델타 (차이) 만 전송됩니다. – slash28cu

+0

감사합니다, 체리 oick 내가 필요한 것 같습니다! 나는 다른 브랜치에서 합쳐질 필요가있는 파일만을 가지고 커밋을 생성 할 수 있으며, 그 다음에 체리는이 커밋을 선택합니다! – darkheir

관련 문제