github 4

GitHub 협업 가이드 - Tag

Tag tag는 특정 커밋에 버전을 기록할 때 사용하는 기능이다. tag는 lightweight tag와 annotated tag 2가지 종류로 나뉜다. lightweight tag는 버전만 기록하는 기본적인 tag이다. 예) v1.0.0 annotated tag는 tag에 추가적인 정보를 기록하는 tag이다. lightweight tag는 git tag 으로 생성할 수 있다. 생성한 tag를 원격 저장소에 등록하기 위해서는 git push origin 으로 등록할 수 있다. annotated tag는 -a 옵션을 사용하여 추가적인 정보를 기록할 수 있다. git log 명령어를 통해 commit에 등록된 tag를 확인할 수 있다. git show 으로 tag의 정보를 확인할 수 있다. 원격 저장소에 등..

GitHub 2023.06.03

GitHub 협업 가이드 - Issue

Issue issue는 전체적인 작업 내용을 세분화하여 쪼갠 개발 작업의 단위이다. issue를 작성함으로써 작업의 history를 관리할 수 있다. commit convention과 마찬가지로 issue의 제목 앞에 prefix를 붙여 어떤 사항에 대한 issue인지 한눈에 파악할 수 있게 한다. ex) [FEAT], [REFACTOR], [FIX] 각 issue에 대응하는 feature 브랜치를 생성하여 작업을 진행한다. 이 때, 브랜치의 이름을 아래와 같이 issue tag를 붙여 작성하면 브랜치에서 작업하는 내용을 파악하기 쉽다. ex) feat-12/branch_name (12번 이슈를 해결하는 기능 구현 브랜치라는 의미) Issue Template issue에는 이 작업이 왜 필요한지(Back..

GitHub 2023.05.27

GitHub 협업 가이드 - Commit Convention & Pre-commit

Commit Convention Commit Convention이란 commit을 남기는 규칙을 의미한다. 일관적인 commit log를 통해 서로 다른 사람들이 작업한 내용을 쉽게 파악하고, 유지보수할 수 있도록 하기 위해 약속하는 commit convention에 대해 알아보자. Header 일반적으로 Header에는 prefix가 붙으며, prefix 뒤로 작업의 대략적인 내용이 붙는다. feat: 새로운 기능 fix: 버그 수정 docs: 문서 내용 수정 style: 코드의 의미가 바뀌지 않는 수정 (공백 처리, 코드 포매팅, 세미 콜론 추가 등) refactor: 코드 리팩토링 perf: 코드 성능 개선 test: 테스트 추가 chore: 빌드 추가, 패키지 관리자 수정 ex) feat: add..

GitHub 2023.05.26

GitHub 협업 가이드 - 브랜치 전략

Git Flow 기본 브랜치로 main, hotfix, release, develop, feature 브랜치가 존재한다. 중심이 되는 브랜치는 main과 develop 브랜치이다. main 브랜치 언제든지 배포할 수 있는 코드가 존재하는 브랜치 배포용 브랜치이므로 main 브랜치에 직접 commit해서는 안된다. develop, release, hotfix 브랜치에서만 main 브랜치에 merge할 수 있다. develop 브랜치 개발이 진행된 코드를 관리하는 브랜치 develop 브랜치에서 여러 개발자가 작업을 하게 될 경우, conflict가 자주 발생할 수 있으므로, 실제 개발 작업은 feature 브랜치에서 이루어진 후, develop 브랜치로 merge하는 방식으로 진행된다. feature 브랜..

GitHub 2023.05.17