2013-11-04 2 views
1

하나의 dev 브랜치와 여러 개의 브랜치 브랜치를 가지고 있습니다. Atlassian에서이 git workflow를 발견했습니다. 아이디어는 dev 브랜치가 운영자를 제외한 모든 개발자에게만 읽혀질 것입니다. 모든 개발자는 기능 지점에서만 작업 할 것입니다. 하지만 여기에 문제가 있습니다 -기능 브랜치에서 dev 브랜치로 파일 병합

Dev A는 지형 지점 A (FB-A)에서 작업을 시작합니다. Dev 브랜치는 평균 시간에 진행될 것입니다. Dev A는 FB-A에 대한 작업을 끝내고 코드를 FB-A (Commit # 1)에 푸시합니다. 그런 다음 Dev에서 FB-A로 당겨 최신 정보를 얻습니다. Dev의 모든 변경 사항은 FB-A에 추가/수정됩니다. 그런 다음이 파일을 커밋하여 FB-A로 전송합니다 (Commit # 2). 이제, 파일들은 dev 브랜치에 병합 될 준비가되었습니다. 내가 그것을하려 할 때, 그것은 Commit # 1과 Commit # 2를 저지른다. 이게 보통의 관행인가?

개발자의 실제 변경 사항이 있으므로 Dev에 첫 번째 커밋 만 병합 할 수 있습니까? 내가 여기서 뭔가를 놓치고 있니?

답변

0

설명에서 커밋 # 2가 병합 커밋 인 것 같습니다. 이것은 좋은 연습입니다. 을 FB-A에 병합 할 때까지 이미 devFB-A에 병합 한 경우 병합 충돌이 거의 없기 때문입니다. Commit # 2에는 devFB-A의 업데이트를 병합하는 방법에 대한 중요한 정보가 있으므로 병합 커밋을 유지하는 것이 일반적입니다. 에서 dev이 아닌 FB-A의 커밋을 추가하기 때문에이 병합 커밋을 병합 할 때 dev 분기에 착륙하는 것이 정상입니다.

참고 :dev으로 병합하기 전에 커밋 # 2를 제거하려는 경우에도 충돌을 해결하기 위해 다른 병합 커밋을 만들어야 할 수 있습니다.