64.내일배움캠프 56일차 TIL <협업을 위한 Git 전략과 일정 관리> 06/27

정광훈(Unity_9기)·2025년 6월 27일

TIL (Today I Learned)

목록 보기
65/110
post-thumbnail

튜터님 자료:
http://github.com/IndieGameMaker/TeamSpartaFinalProjectOT


<칸반보드 툴 활용>(notion, trello, jira)

  • 트렐로 (사용편의 상, 대규모 프로젝트에는 부적합)
  • Jira (프로젝트 관리에 특화, 복잡한 기능)
  • Github Projects (Github과 통합 관리 가능, Issue와 연동)

이슈 관리

Github Issue 기능 적극 활용 (기능 개발, 버그 수정, 문서화 등)
이슈를 통해 작업을 할당하고 진행 상황을 추적
커밋 메시지에서 Issue 번호를 참조하여 작업 추적

git commit -m "fix: #13: 버그 수정 내용"
git commit -m "feat: #02: 새로운 기능 추가 내용"
git commit -m "feat: 로그인 기능 완성 closed #20"

위에 언급한 툴은 모두 Slack과 연동 가능
Slack을 통해 알림을 받고, 팀원들과 소통 중요함. 반드시 연동할 것.


<브랜치 전략>
git flow: 대규모 프로젝트에 적합, 기능 개발과 버그 수정을 명확히 분리
github flow: 간단한 프로젝트에 적합, 빠른 배포를 목표로 할 때 사용
(github flow는 우리가 사용하지는 않음)

  • git flow 전략
  1. main: 배포 가능한 안정 버전
  2. develop: 개발 중인 기능을 통합하는 브랜치
  3. dev/팀원명: 팀원별 개발 브랜치
  4. feature/기능명: 새로운 기능 개발을 위한 브랜치(옵션),
    삭제하고 다시 작업할 때 파야하는 번거로움이 있음

튜터는 4번보다는 3번을 선호.
이유는 4번은 끝나면 지운다고 함. 그렇다 보니 필요하면 다시 생성해야 함.


<main 브랜치 보호 설정>

main 브랜치에 직접 푸시를 막고, Pull Request를 통해서만 변경 가능하도록 설정 (Github 유료계정일 경우)

또는 git hook을 사용하여 main 브랜치에 직접 푸시를 막을 수 있음

이렇게 하는 이유는 잘못된 브랜치가 main브랜치로 올라가서 문제를 발생시킬 일이 없도록 하기 위함이다.

0개의 댓글