2015-01-09 3 views
1

새 커밋 _id를 만들지 않고 some_other_repo_branch에서 another_branch으로 병합하는 좋은 방법이 있습니까? 내가 이것을 사용하고git에서 새 커밋 ID를 만들지 않고 코드 병합

:

git checkout my_branch git pull --rebase <remote> other_branch_where_are_the_changes

+4

글쎄 ... 유창 해지기 위해서'pull --rebase' *는 새로운 커밋 ID를 만들 것입니다. 이전 커밋과 비슷한 새로운 커밋을 만들지 만 새로운 ID를 갖게됩니다. 병합 커밋 * 만들기에 대해 걱정 하시거나 * 커밋 ID *에 대해 걱정 하시겠습니까? –

+0

@EdwardThomson 안녕하세요. 커밋 ID에 대해 걱정됩니다. – crsuarezf

답변

1

(즉, 가능한 경우, 기본값) 빨리 감기 병합을하고, 자식 는 커밋 만들지 않습니다. 당신은 명시 적으로 --ff-only을 사용하여 해당 동작을 적용 할 수 있습니다 : 물론

#in another_branch 
git pull --ff-only remote some_other_repo_branch 

, 충돌이없는 IFF에이 만 사용할 수 있습니다 - 그렇지 않으면, 자식 수 빨리 감기하지, 당신은 커밋 있어야합니다 (때문에 [이론적으로] 당신은 제 시간에 돌아갈 수 없습니다.

참조 : git help merge, "빨리 감기 병합"섹션.

+1

빨리 감기 병합을하는 것은 기본적으로 커밋을 생성하지 않지만, 빨리 감기 ('--no-ff') 일지라도'git'이 어쨌든 생성하도록 말할 수 있습니다. 어떤 프로젝트는 합병이 완료되었을 때의 정확한 감사 추적으로 이것을 요구합니다 ... – twalberg

+0

완벽하게, 나는 이것을 파고 내 결과를 올릴 것입니다. 그리고 네. 나는 BC 역활을 할 것입니다. 새로운 커밋 ID를 원하지 않습니다. – crsuarezf