Replies: 7 comments 6 replies
-
|
master CD가 실패하면 자동으로 이전 이미지로 롤백하는 기능 추가도 좋을 거 같습니다. 예전에 stage 서버의 헬스체크 확인이 제대로 되지 않아 개발자가 stage 서버가 죽은지도 모르는 일이 몇 번 있었는데, prod에서도 이러한 상황이 발생하면 치명적일 것이라고 생각합니다. 본 논의와 연관없지만, 서버 헬스체크 관련해서 로깅도 강화하면 좋을 거 같습니다. 서버 죽으면 디코로 알림 오게끔 ... |
Beta Was this translation helpful? Give feedback.
-
저는 master를 develop HEAD로 강제 이동시키기 (reset --hard) 방법이 나을 것 같습니다. 현재 master 브랜치의 머지 커밋을 굳이 남기지 않아도 된다고 생각합니다. 체리픽하면 해당 커밋이 남아있게 되고, 체리픽해야 하는 커밋 또한 상당할 것 같습니다. |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
-
develop->master로의 PR 머지 방식은 fast forward 방식이 가장 좋을 것 같습니다(초기 브랜치 커밋 히스토리 동기화 시 reset --hard 방식을 채택한 경우) 두 브랜치의 커밋 히스토리가 아예 동일해지기 때문에, master에서 feature 파서 develop으로 PR 보내는 상황에서 커밋 히스토리가 꼬이는 상황이 발생하지 않을 것이라고 생각합니다. 다만 master 커밋 히스토리를 보고 릴리즈 경계를 파악하는 데는 어려움이 있겠지만(머지 커밋이 없으니까), 이러한 상황이 필요한 상황은 없을 거라고 생각합니다. |
Beta Was this translation helpful? Give feedback.
-
최종 라벨이 붙은 PR은 리뷰가 꼭 필요한 PR입니다. 깃허브/디코 알림 확인하셔서 리뷰 달아주세요 ..! 안 그럼 머지 못해요 ㅠㅠ |
Beta Was this translation helpful? Give feedback.
-
|
위 전략을 택한다면, 다음과 같은 작업 순서로 진행하는 것이 좋아 보입니다.
|
Beta Was this translation helpful? Give feedback.
-
|
새로운 브랜치 전략에서의 핫픽스 상황에 대해 추가 설명합니다. hotfix 내용을 develop 브랜치에 반영하기 위해서는 반드시 핫픽스 내용을 체리픽하여 별도의 동기화 브랜치(sync)를 만든 후, 반영해야 합니다. 그래야 핫픽스 내용 반영해도 커밋 히스토리가 동일해지며, 이후 develop->master로의 원활한 ff merge이 가능해집니다. |
Beta Was this translation helpful? Give feedback.

Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
기존 브랜치 전략
일반적인 흐름
핫픽스
문제점
변경된 브랜치 전략
일반적인 흐름
핫픽스
더 자유로운 develop 브랜치
develop 브랜치의 PR 리뷰 제한을 없애고(그래도 가능한 리뷰는 받도록), 개인이 머지 가능하도록 변경할 예정입니다. 장애가 발생하면 revert를 하셔도 되고, 수정하는 PR을 올리고 머지하셔도 됩니다.
PR을 생성할 때 진행중 / 최종 라벨을 달아서 올려주세요.
진행중: 아직 완성되지 않은 작업을 stage에서 테스트하기 위해 임시로 머지하는 PR입니다. 리뷰어는 Request Changes 대신 Comment로만 피드백을 남겨주세요. 해당 피드백은 이후 최종 PR에서 반영하면 됩니다. 3일 이내 리뷰가 달리지 않으면 리뷰 없이 머지할 수 있습니다.
최종: 작업이 완료된 PR입니다. 최소 1명의 리뷰를 받아야 합니다. 리뷰어는 Request Changes를 적극적으로 활용해주세요.
develop -> master 배포 주기를 짧게 유지하려고 합니다. 이러한 상황에서 원치 않는, 불필요한, 미완성의 PR이 포함되어 배포될 수 있습니다. 이에 배포 일자를 미리 공유하고, 해당 날짜 이전까지 아래 중 하나를 선택하여 정리해주세요.
다만 정말 불가피한 경우, 배포에 포함되어야 하는 PR만 cherry-pick하여 master로 머지를 하려고 합니다.
Q&A
위 내용에 대한 의견 및 질문 등등 아무거나 자유롭게 남겨주세요 !!
master에서 feature 브랜치를 생성하기 위해 develop과 master의 커밋 히스토리를 일치시켜야 합니다. 좋은 방법이 있다면 제안해주세요.
github remote를 fork repo가 아니라 upstream에 직접적으로 연결하려고 합니다. 현재 방식은 개발 전 fork repo를 동기화 한 후, feature 브랜치를 생성해야 합니다. upstream에서 feature 브랜치를 생성하는 경우 브랜치가 많아질 수 있으나, PR 머지 후 해당 브랜치를 삭제하는 기능이 존재하므로, 브랜치가 많아지는 문제를 해결할 수 있다고 생각합니다.
변경된 브랜치 전략에서 각 PR에 대해 어떤 머지 전략을 취하는 것이 좋을까요 ? 이미지에서는 제 임의대로 작성했습니다.
Beta Was this translation helpful? Give feedback.
All reactions