협업 방식은 대부분 첫 팀에서 배워요. 처음 만난 팀장이 main에 바로 올리자고 했으면 그렇게 하고, 브랜치를 꼭 나누자고 했으면 그렇게 해요. 그리고 그 방식이 어느새 "원래 다 이렇게 하는 것"이 돼요.
문제는 그 방식이 좋아서 고른 것이 아니라 처음 본 것이어서 쓰고 있다는 점이에요. 다른 방식을 본 적이 없으면 지금 방식이 불편한지조차 알기 어려워요.
혹시 이런 모습인가요
아래 중에 익숙한 장면이 있다면 한 번쯤 다른 팀을 들여다볼 때예요.
- 마감 전날 밤에 커밋이 몰리고, 합치다가 충돌이 터져요.
- 커밋 메시지가 "수정", "진짜 최종", "버그 고침"으로 채워져 있어요.
- PR은 올리지만 아무도 읽지 않고 바로 합쳐요.
- 누가 무엇을 하고 있는지 메신저로 물어봐야만 알 수 있어요.
- 같은 파일을 두 사람이 동시에 고쳐서 한 사람의 작업이 날아간 적이 있어요.
이런 일이 반복되는 이유는 팀원이 게을러서가 아니에요. 대부분은 약속이 없거나, 약속이 팀에 맞지 않아서 생겨요.
팀마다 정말 다르게 일해요
공개 레포 몇 개만 비교해 봐도 방식이 얼마나 다양한지 알 수 있어요.
| 무엇을 | 이런 팀도 있고 | 이런 팀도 있어요 |
|---|---|---|
| 브랜치 | 기능마다 브랜치를 만들고 PR로 합쳐요 | 작은 팀이라 main에 바로 올려요 |
| 브랜치 이름 | feat/login처럼 종류를 앞에 붙여요 |
12-login처럼 이슈 번호를 넣어요 |
| 커밋 메시지 | feat: 로그인 구현처럼 말머리를 붙여요 |
말머리 없이 문장으로 적어요 |
| 합치는 방식 | 커밋을 하나로 뭉쳐서 합쳐요 | 커밋 기록을 그대로 남겨요 |
| 할 일 관리 | 이슈에 담당자와 라벨을 꼼꼼히 달아요 | 이슈 없이 메신저로 나눠요 |
| 작업 단위 | 하루에도 여러 번 작게 올려요 | 기능이 끝나면 한 번에 올려요 |
어느 쪽이 무조건 옳은 것은 아니에요. 세 명이 일주일 동안 만드는 프로젝트와 열 명이 일 년 동안 만드는 프로젝트는 필요한 약속이 달라요. 중요한 것은 여러 방식을 알고 그중에서 고르는 것이에요.
다른 팀의 방식을 읽는 방법
협업 방식은 문서보다 기록에 더 정확하게 남아 있어요. 아래 다섯 가지를 보면 그 팀의 윤곽이 잡혀요.
- 브랜치 이름: 종류를 붙이는지, 이슈 번호를 넣는지, 사람 이름을 쓰는지 봐요.
- 커밋 메시지: 말머리가 있는지, 어떤 언어로 쓰는지, 얼마나 구체적인지 봐요.
- PR: 템플릿이 있는지, 어떤 항목을 적는지, 어떤 방식으로 합치는지 봐요.
- 이슈: 제목 형식, 라벨, 담당자 지정 여부를 봐요.
- 저장소 설정: 자동으로 돌아가는 검사가 있는지, 기여 안내 문서가 있는지 봐요.
직접 하나씩 확인해도 되지만, WhoIsLoafing에 레포 링크를 넣고 "이 팀의 협업 방식을 훔치고 싶어요" 를 고르면 한 번에 정리해 드려요. 그 팀이 실제로 쓴 브랜치 이름과 커밋 메시지 예시, PR 템플릿 항목, 이슈를 관리하는 방식을 보여주고, 우리 팀에 적용하는 순서까지 알려드려요. 마음에 들면 팀 규칙 문서 복사하기 버튼으로 문서를 그대로 가져갈 수 있어요.
한꺼번에 바꾸지 마세요
좋아 보이는 것을 전부 가져오면 대개 일주일을 못 가요. 약속이 많아질수록 지키기 어려워지기 때문이에요. 아래 순서로 한 번에 하나씩 들여오는 것을 추천해요.
- 커밋 메시지 말머리부터 정해요. 비용이 가장 적고 효과는 바로 보여요.
- 브랜치 이름 규칙을 정해요. 누가 무엇을 하고 있는지 목록만 봐도 알 수 있게 돼요.
- PR 템플릿을 만들어요. 무엇을 왜 바꿨는지 적는 칸 두세 개면 충분해요.
- 이슈로 할 일을 나눠요. 메신저에 흩어진 할 일이 한곳에 모여요.
- 자동 검사를 붙여요. 사람이 매번 확인하던 것을 기계에게 넘겨요.
하나를 2주쯤 써 보고, 팀이 익숙해지면 다음으로 넘어가요. 써 보고 맞지 않으면 버려도 돼요. 약속은 팀을 편하게 하려고 있는 것이지, 지키기 위해 있는 것이 아니에요.
우리 팀도 다시 들여다보세요
다른 팀을 봤다면 우리 팀 레포도 같은 눈으로 한 번 분석해 보세요. 생각보다 많은 것이 보여요.
- 우리는 정말 작게 나눠서 작업하고 있을까요?
- 커밋이 특정 요일이나 마감 직전에 몰려 있지는 않을까요?
- 정해 둔 커밋 메시지 규칙을 실제로 얼마나 지키고 있을까요?
회고 자리에서 "다음에는 더 잘하자"라는 말로 끝나는 대신, 기록을 같이 보면서 무엇을 바꿀지 정하면 훨씬 구체적인 이야기가 나와요.
지금 방식이 편하다면 그대로 써도 좋아요. 다만 다른 방식을 알고 나서 고른 편안함과, 몰라서 머무는 편안함은 달라요.