질문답변Q1. 강제 삭제를 해야만 한다Q2. 커밋을 얼마나 잘 나눴느냐에 따라 다른 것 같다Q3. 머지 커밋을 남기는 방식을 사용하되 불필요한 커밋은 PR 머지 전에 브랜치 단에서 작업한다See also
질문
- Q1. Github PR에서 Squash and merge를 한 다음에 로컬에서 PR 올린 브랜치 삭제하는 방법?
- Q2. PR 머지 방법 중 Squash and merge가 좋은 전략일까?
- Q3. 그러면 어떤 방법을 선호하는가?
답변
Q1. 강제 삭제를 해야만 한다
Q2. 커밋을 얼마나 잘 나눴느냐에 따라 다른 것 같다
커밋을 잘 나눴다면 스콰시 머지를 해도 좋다. 그러나 스콰시한 커밋 단위가 너무 크면, 해당 커밋에 구체적으로 어떤 작업이 포함되었는지 파악하기 힘들고 나중에 롤백을 해야 하거나 특정 기능을 리버트해야 할 때 작업이 복잡해진다.
그리고 스콰시 머지 전략의 장점인 "간소한 Git 이력"은 스콰시 머지가 아니더라도 PR이 머지 되기 전에 브랜치 단에서 rebase한 후 force-push 하면 달성할 수 있다.
Q3. 머지 커밋을 남기는 방식을 사용하되 불필요한 커밋은 PR 머지 전에 브랜치 단에서 작업한다
예시:
# 1. PR 올린 후 사소한 오타가 발견되어 수정을 요청 받았다 # 2. 오타를 고친다 git add . git commit --amend --no-edit # 3. force push 한다 git push --force # 4. PR 승인을 받아 머지한다
![[팀7] 뿡치와 삼촌들 - Devnity](https://www.notion.so/image/https%3A%2F%2Fs3-us-west-2.amazonaws.com%2Fsecure.notion-static.com%2F01eff8cd-e29b-4c4f-baa5-b2eaaa708cd6%2F2.jpg?table=block&id=c0f09e02-7acf-4d9e-8aea-b21f7a9a8822&cache=v2)
