티스토리 뷰
728x90
반응형
1. 깃 브랜치 전략
(1) 깃 브랜치를 운영하는 방법론
- 깃 브랜치를 관리하는 방법론에는 gitflow와 github flow 두 가지가 있다.
- gitflow는 브랜치를 master, develop, feature, release(내보내기 직전), hotfix(긴급한 것)로 나누어 운영하는 방식이다.
- github flow는 gitflow가 보다 단순화되어 main, feature 두 가지로 운영하는 방식이다.
- 큰 회사는 gitflow, 스타트업 같은 경우는 github flow를 사용한다.
(2) 브랜치 전략을 세우는 이유와 요령
- 하나의 프로젝트 소스코드는 다양한 개발자가 함께 다루기 때문에 소스 코드가 합쳐질 때 문제를 해결하기 위해 브랜치 전략을 세운다. (merge 충돌을 해결하는 전략)
- 전략을 통해 개발 협업을 원활하게 한다.
- 전략을 세울 때 고려 요소
- 제품으로 나갈 수 있는 상태인가?
- production ready (빌드와 배포가 될 수 있는 상태), 개발 전용 feature 브랜치를 따로 빼서 사용
- 빌드 실패를 허용하는가?
- 테스트 실패를 허용하는가?
- 임시로 운영하는가? main
- 수시로 삭제되는가? feature
- 제품으로 나갈 수 있는 상태인가?
(3) 깃헙 프로젝트
- 게시판 프로젝트의 Project backlog에 강의 커리큘럼 리스트를 추가한다.
- 본인에게 맞는 기준에 따라서 세부 내용을 설정해 줄 수 있다.
- New 에는 생각나는 목록들을 마구 적는 곳이라고 생각하면 된다. (setting에 삭제 가능)
- Backlog는 실제 업무로 설정하는 것들을 작성해 놓는 곳이다.
- Ready는 오늘 할 일 처럼 시작할 준비가 된 것들이 모아 놓는다.
- In progress는 진행 중인 작업들을 놓는다.
- In review는 협업자가 있어 코드리뷰가 필요할 때 놓는다.
- Done에는 완료된 작업들이 있다.
(4) Gitflow 전략을 Gitkraken에서 적용해보기
- gitflow는 개발 브랜치와 master 브랜치를 나눠 놓기에 빠르게 개발하는 과정에서는 과하다.
- 깃크라켄에서 제공하는 gitflow를 통합시키기는 방식을 사용하면 좋다.
- 임의의 Branch (dummy) 를 생성한다.
- Preferences > Gitflow 설정을 수정한다.
- Master : dummy
- Develop : main
- initialize gitflow
- GITFLOW와 LOCAL이 동일하기에 LOCAL을 닫아준다.
- GITFLOW 오른쪽의 꺽쇄를 통해 open gitflow 를 눌러주고 feature를 시작한다.
- feature/#3-gitflow (여기서 "#3-gitflow"는 #3 깃 브랜치 전략 이슈이다.)
- 디렉토리에 연동이 된다는 장점이 있다.
2. 유즈케이스1
- 유즈케이스는 시스템이나 서비스를 설계할 때, 사용자의 패턴을 분석한 것이다.
- 대표적인 도구: 루시드차트, drawio
- drawio : https://app.diagrams.net/
- 깃헙과 연동 가능
- 깃헙과 연동 전에
- 디렉토리를 생성한다.
- 참고) 깃 크라켄에 터미널 기능이 추가되었는데, 명령어를 찾기 쉽도록 도와주는 기능이 있다.
- 유즈케이스 이슈를 생성한다. (#4)
- feature start > feature/#4-usecase 를 시작한다.
- 참고) 깃 크라켄에서는 브랜치 이동이 자동적으로 이루어져 쉽게 옮길 수 있다. (내부적 명령어를 통해)
- 임의의 파일(usecase.svg)을 디렉토리 아래 생성하고 commit 한다.
- commit 전략: 이슈 주소를 short link(#4)로 변경하여 사용할 수 있다. (autolinked reference and urls 참고)
- 왜 생성하게 되었는지 내용에 대하여 작성해주면 좋다.
- #4 - 게시판 서비스 유즈케이스 작성
커밋해야해서 document 디렉토리를 만들고, 빈껍데기 파일 생성
- 디렉토리를 생성한다.
- document 폴더와 유즈케이스를 연동한다.
- 다이어그램을 그려준다.
- 포함관계 : 점선 & 화살표(->) & conclude (인증)
- 확장관계 : 점선 & 화살표(<-) & extend (로그인 실패)
본 포스팅은 패스트캠퍼스 환급 챌린지 참여를 위해 작성하였습니다.
#패스트캠퍼스 #포트폴리오 #직장인자기계발 #환급챌린지 #포트폴리오챌린지 #패스트캠퍼스후기 #초격차패키지 #오공완
728x90
반응형
'Study > FastCampus' 카테고리의 다른 글
[Java Project] Part 2. 게시판 서비스 만들기 - 스프링 부트 프로젝트 (0) | 2023.08.26 |
---|---|
[Java Project] Part 2. 게시판 서비스 만들기 - 유즈케이스2 및 API 설계 (0) | 2023.08.25 |
[Java Project] Part 2. 게시판 서비스 만들기 - 프로젝트 기획 및 깃헙 이슈 정리하기 (1) | 2023.08.23 |
[Java Project] Part 2. 게시판 서비스 만들기 - 개발 환경 및 개발 목적 (0) | 2023.08.22 |
[Java Project] Part 1. 나만의 MVC 프레임워크 만들기 - Reflaction 및 Spring MVC와 비교하기 (0) | 2023.08.21 |
댓글