2012-12-13 3 views
2

두 개의 파일 AB이 master에 있습니다. 나는 AB을 모두 수정 한 지점 feature을 만들었습니다. 그런 다음 다른 사람이 B을 삭제하고 AB으로 바꿔 master (git mv 사용)으로 바꿨습니다. 파일의 이름을 바꾼 후 git merge를

내가 masterfeature 병합

, 자식은 B의 내용이 실제로 마스터에서 A의 내용이기 때문에, 내가 기대했던대로하지 않은, masterBfeatureB를 비교합니다.

거기에 어떤 내장 내가 병합 할 때 masterBfeatureA를 연결할 수 있습니다 기능?

답변

1

파일 이름을 양쪽에서 일치 시키거나 git이 파일을 볼 때까지 임계 값 비율을 변경하십시오. 나는 그것이 -M 옵션이라고 생각합니다.

0

master 분기의 B은 어떻게됩니까? AB이라고되어 ​​있다면 feature 브랜치에서도 이름을 바꾸는 것이 좋습니다. 물론 B의 이름을 C과 같은 다른 이름으로 바꾸면 정상적으로 병합됩니다.

+0

A에서 B로 이름을 변경했을 때 내용이 일부 변경되었음을 언급해야합니다. 그것들은 C++ 파일입니다. 파일의 이름을 변경했을 때 해당 클래스 이름을 변경하고 가드, 변수 이름을 포함 시켰습니다. – user571470

+0

충돌하는 파일에 수정 사항이있는 경우 유일한 해결 방법은 충돌을 수동으로 수정하는 것이지만 종종 git가 수정 된 내용은 그들이 동일한 파일임을 안다. 동일한 이름을 사용하면 함께 병합을 시도하는 것을 알 수 있습니다. – Clukester

관련 문제