Git에서 새 브랜치를 만들 때 어느 브랜치에서 갈라내느냐에 따라 이후 PR에 포함되는 커밋이 달라진다.
1. develop에서 바로 feature/one 브랜치를 만들면 → PR에는 오직 feature/one에서 만든 커밋만 포함된다.
2. feature/one에서 또 feature/two를 만들면 → feature/one의 커밋 + feature/two의 커밋이 모두 PR에 들어간다. (첫 번째 PR이 아직 머지되지 않았다면 겹쳐 보이는 문제 발생)
• feature/one 브랜치에서 바로 또 새로운 브랜치를 만들어 작업을 이어갔다
• 그래서 두 번째 PR을 열었더니 첫 번째 PR의 커밋까지 전부 포함되어 버렸다
• 결과적으로 PR 커밋이 꼬여 보이고, 리뷰어 입장에서도 구분이 힘들었다
• 일단은 앞선 PR(feature/one)을 먼저 머지하고,
• 그다음 뒤의 PR(feature/two)을 머지하는 방식으로 문제를 해결했다.
• 새로운 작업을 시작할 때는 반드시 develop(또는 main) 기준으로 브랜치를 파는 것이 안전
• 만약 이전 작업 위에서 브랜치를 만들었다면, 그건 사실상 스택 PR 구조가 되므로, 리뷰/머지 순서를 잘 지켜야 한다
• git fetch origin 후 항상 develop을 최신으로 맞추고, 그 위에서 새 브랜치를 시작하면 커밋 꼬임을 예방할 수 있다