2011-07-26 4 views
32

추적 옵션이있는 A 분기에서 새로운 자식 분기 B을 만들었습니다.상위 분기에서 현재 분기 업데이트

A 브랜치가 몇 개의 커밋으로 업데이트되면, 나는 커밋을 B으로 끌어 들이기를 원합니다. 그래서 그것을 추적 할 수 있으며, 나중에 큰 변화에 직면 할 필요가 없습니다.

어떻게 접근해야합니까? 그것은 자동으로 자식에서 이루어 집니까?

+0


은 나뭇 가지가 실제로 해당 분기의 A는 지점 A에서 피드 말 외에 아무 것도 추가 추적 있습니까? –

+2

브랜치 B를 A로 리베이스해야합니다. –

답변

35

이것은 자동으로 생성되지 않습니다. 변경 사항을 A에서 B로 수동으로 병합해야합니다. 이는 매우 간단합니다. B의 합병으로 그냥 지점 B로 전환하고 자동으로 당신이 충돌을하지 않는 A에서 B로 변경 내용을 병합합니다

git merge A 

을, A의 모든 변경 사항이 표시됩니다 일반적으로 모범 사례는 일일 병합을 만드는 것이지만 분기를 사용하는 사용자 수/커밋 수에 따라 다릅니다.

+0

A가 원격 브랜치이고 B가 로컬 브랜치 인 경우 Git pull이면 충분합니다. – HackerGil

2

B을 생성하라는 전화가 git clone /path/to/server/A 인 경우 git pull을 수행하면 완료됩니다. 그것이 의 작동 방식입니다. 먼저 fetch 업스트림 (귀하의 경우 추적 분기 A)에서 변경 사항을 추적 한 다음 merge 이러한 변경 사항을 추적 분기를 추적하는 분기 (귀하의 경우 B)로 변경하십시오.

Git BookPro Git은 그 주제에 대해 깊이 논의하므로 읽고있을 가치가 있습니다. (서둘러하지 않으면 나머지 부분도 읽으십시오).

+0

이봐, 궁금해. 실제로 A에서 복제하여 B 지점을 만들었는지 잘 모르겠습니다. 저는 생각하기에 일부 무작위 옵션을 사용하여'git branch A '지점을 만들었습니다. 그래서, 내가 git pull을하면 git은'당신이 병합하고자하는 브랜치를 알려주지 않고 풀어달라고 부탁했다. '라고 말합니다. – user482594

+0

@ user482594 :'pull'은 당신이 먼. 만약 당신이'A'에 있고'git checkout -b B' 만했다면, 간단히'merge '할 수 있습니다 ('B'에있는 동안'git merge A'라고 입력하십시오). – eckes

관련 문제