2012-01-21 2 views
0

저는 새로운 지형지 물을 사용하려고 합니다만 원점/마스터에서 오는 모든 커밋을 계속보고 싶습니다. 다음은 효과가 있습니까? 그것을하는 것이 가장 좋은 방법입니까? 일 근무에지형지 물 A에서 원점/마스터를 추적하고 원점/지형지 물 A에 변경 내용을 적용 할 수 있습니까?

git clone ssh://xxx/repo 

git branch --track featureA origin/master 

[do work on featureA and commit] 

git commit -m"all changes made in featureA" 

git push 

일 : 시간이 마스터로 featureA을 병합 할 준비가되면

git pull (pull the latest from origin/master) 

[merge the new commits coming from origin/master with my local featureA changes] 

git commit -m"resolved conflicts" 

git push origin/featureA 

:

git checkout master 

git merge featureA 

git push origin/master 

가 잘 들린다?

답변

1
git checkout -b featureA origin/master #create the branch 
git push origin featureA #push it up and track it 

마스터를 독립적으로 업데이트하십시오. 당신이 (당신의 기능을 병합 포함) 거기에 아무것도 커밋하지 않은 경우 당신은 그것을 밖으로 검사 할 필요가 없습니다 : 이제 당신은 그 최신 변경 사항을 포함 할 경우

git fetch 
git push . origin/master:master 

당신이 할 수있는,

git merge master 

마스터에서 변경 사항을 포함 할

git checkout master 
git merge featureA 
git push origin master #to send that up 

나는 보통 git fetch로 가져온 무엇인지 확인하고 다음 날 따라 행동처럼 나는 풀을 사용하지 것이다 rge 또는 rebase 또는 무엇이든.

+0

감사합니다. @ adam. 'git push? origin/master : master'는 위와 같습니다. – ben39

+0

그것은 속임수입니다. 첫 번째 인수는 대개 원격 이름입니다. 마침표를 제공하면 리모컨이 현재있는 레포와 동일하게 지정됩니다. 그래서 추적 분기 원점/마스터가 가리키는 점을 로컬 마스터 분기로 밀어 넣습니다. :) –

+0

빨리 감기를 확인하기 때문에 update-ref보다 낫습니다. 그렇지 않은 경우 force 옵션이 필요합니다. –

관련 문제