개인 공부와 연습을 위한 개인 프로젝트를 시작했다. 작업 방식에 있어 혼자 하는 프로젝트라고 마냥 편하게 하기보다는 지금까지 참여했던 여러 프로젝트들과 인턴십에서 배운 프로젝트 관리 방법들을 적용해 깔끔한 방식을 유지하면서 작업하고 싶었다. 사용하려는 협업 툴은 지라로 지라 - 깃헙 연동을 포함한 깃허브, 지라 프로젝트 세팅 과정을 거쳤다. 이번을 기회로 프로젝트 초기 세팅 과정들을 목록화해 정리해보고 블로그에도 기록해두고자 한다.
🗂️ Github Organization 및 Repository 생성
오가니제이션 없이 필요한 레포지토리만 생성하는 것도 좋지만, 하나의 프로젝트를 위한 클라이언트와 서버 레포지토리를 따로 두어 사용하고, spring admin 레포 추가 혹은 microservice architecture 이해를 위한 레포 분리도 염두에 두고 있기에 관련 레포지토리들을 한 데 모아 관리할 수 있는 오가니제이션을 생성해 작업하고자 했다.
1. 깃허브 오가니제이션 생성
free 버전을 사용했다.
2. 깃허브 레포지토리 생성
🗓️ Jira Project 생성 및 설정
1. 지라 프로젝트 생성
1
2
3
4
1. 프로젝트 만들기
2. 소프트웨어개발 > 스크럼 > 팀에서 관리하는 프로젝트 선택
3. 프로젝트 이름 및 키 생성, 권한 설정
4. 팀 초대 혹은 건너 뛰기
2. 지라 - 깃허브 연동
1
2
1. 지라 앱 > github for atlassian
2. 깃허브 settings > github apps > jira 연동 확인
🛠️ 프로젝트 시작 및 깃헙 초기 세팅
Jira 스프린트, 스크럼 방식과 Git Flow를 따라 진행하고자 했다.
1. 지라 백로그에 이슈 추가
2. 지라 키 포함 브랜치 생성
브랜치, 커밋 트래킹을 하는 데 필요한 키이다. 띄어쓰기를 포함한 프로젝트 이름 설정 시 이니셜로 자동 생성되나 수정이 가능하다.
3. 브랜치에서 작업.
초기 작업 예시 - 이슈 템플릿, PR 템플릿, 깃헙 액션 플로우 등 기본 파일들 추가
4. 지라 키를 포함해 커밋 메세지 작성 및 커밋, 푸시
깃허브와 지라의 연동이 성공적으로 이뤄졌다면 지라 이슈에 연동된 브랜치와 커밋이 보이는 것을 확인할 수 있다. ![]()
5. 풀리퀘스트 생성 및 작성
6. 풀리퀘스트 내용 및 커밋 확인, 리뷰 및 리뷰 반영
7. approve 시 squash 후 merge
테스트 커밋을 포함해 커밋의 개수가 많아질 수록 일반 머지의 경우 히스토리에서 작업 단위로 커밋을 확인하기에 불편해진다. 커밋 히스토리를 깔끔하게 유지하기 위해 squash 후 merge하는 방식을 택했다.
혼자 진행하는 프로젝트이기에 merge 조건을 추가하지 않았지만 팀 프로젝트였다면 일정 명 수 이상이 approve 했을 시 머지가 가능해지도록 하는 rule 설정 단계를 거쳤을 것이다.
8. 브랜치 삭제
태스크 단위로 브랜치를 만들어 작업할 예정이기에 브랜치 개수가 많아지면 브랜치 체크아웃 단계에서 실수할 수 있으므로 작업 후엔 브랜치를 삭제한다.