2023. 4. 12. 00:22ㆍ기타
GitHub Repository에 꼭 필요한 파일
README.md
gitHub는 개발자에게 필수적인 정보들이나 프로젝트들이 공유되어 있다.
다른사람의 프로젝트(레포지토리)에 들어가면 가장 먼저 나를 반기는건 README.md 파일이다.
README.md는 기본적인 마크다운 사용법을 잘 숙지하고 있으면 간단한 소개 페이지처럼 제작 할 수 있다.
그렇기 때문에 프로젝트 레포지토리의 경우 프로젝트의 설명, 사용기술 , 시연영상, 개발인원 등 프로젝트의 상세 내용이 담겨있는경우가 많다.
그렇기 때문에 프로젝트에 앞서 README.md 파일을 작성하는편이 다른 사람들이 나의 프로젝트를 쉽게 알아봐주고 이용 할 수 있게 해준다.
프로젝트 README.md 파일에는 아래 정보들은 꼭 포함되야 한다.
- 프로젝트 이름
- 프로젝트 핵심 기능 소개
- 팀원 소개
.gitignore
gitignore dotfile은 git으로 관리하지 않는 파일 모음이다. 여기에는 개인이 따로 관리해야하거나, 보안에 관련된 중요한 secret token이나, 타인에게 공유 할 필요가 없는 세팅 파일, 그외 공유할 필요없는 파일을 기록하면 git이 이를 읽지않고 push할 때도 레포지토리에 반영되지 않는다.
LICENSE
코드의 라이센스를 표기한다. GitHub에 puplic하게 공개된 레포지토리도 라이센스에 따라서 아용 가능하고, 하지 못 할수도 있으니 사용할 때 라이센스를 잘 보고 사용해야 한다.
회사에서 사용하는 코드는 private으로 관리하고, 외부에 공개하지 않아 라이센스 정보를 따로 표기하지 않기도 한다.
만약 public으로 공개 된 회사코드가 있다면 LICENSE를 명확하게 기재해야 한다.
프로젝트 관리에 활용할 수 있는 GitHub 기능
Issue
이슈는 작업의 버그 수정, 새로운 추가될 기능, 개선해야하는 기능 등등 모든 것이 될 수 있다. 모든 활동 내역에 대해 이슈를 등록하고 그 이슈를 기반으로 작업을 진행한다. 그리고 이슈를 만들면 이슈를 열었다(open)라고 하고, 작업이 끝나 이슈를 정리하면 이슈를 닫았다(close)라고 말한다.
Milestone
이슈가 하나의 기능을 담당한다면 마일스톤은 내 작업 방향의 이정표이다.
마일스톤의 유래는 고대 로마 시대로부터 시작됐는데 아우구스투스 황제 시절, 그들은 로마의 길에 1마일마다 돌을 세워서 표시를 했다고 한다.
이 돌은 여행자들이 그들이 현재 로마의 길에 있다는 것을 인지하게 하고, 두 지점간의 평균적이 거리 감각을 갖게 하기 위해서 존재했다고 한다.
마일스톤은 프로젝트에서 중요한 이벤트를 표시하는 기준점이며 프로젝트의 진행도를 파악하기 이해 사용된다.
만약 내 프로젝트가 A > B > C > D 의 과정을 거쳐 만들어져야한다면
각각의 A, B, C, D 마일스톤을 만들고
각각의 마일스톤에 이슈를 붙여가며 현재 내 프로젝트의 진행을 파악하는 용도인 것이다.
한 마일스톤에는 여러개의 이슈가 등록될 수 있다.
마일스톤 : 이슈 > N : 1 관계!
Pull Request
사장님 ...! 제가 금일 작업을 완료했는데 퇴근해도 되겠습니까? 제 돌덩이들을 받아주세요 ㅠㅠㅠㅠ
- 자연스러운 코드 리뷰를 위해
- Push 권한이 없는 오픈 소스 프로젝트에 기여할 때
- 콜라보레이터에 소속되어있는 경우에는, 그 저장소에서 브런치를 따고 푸쉬하면 풀리퀘가 가능하다.
+ 에서 branch가 보이는 경우는 그 저장소만의 기능이다
Project
프로젝트는 작업 현황과 진행도를 볼 수 있는 메뉴이다. 이슈, PR(풀 리퀘스트)들을 하나의 작업으로 구분해 그 작업이 현재 어느 정도 진행되었는지 확인할 수 있다.
- To Do : 해야 할 작업
- In Progress : 진행 중인 작업
- Done : 완료된 작업
그리고 Projects를 사용하면 위와 같이 To do, In Progress, Done과 같은 기능을 제공해주는데 이것을 통해 프로젝트의 진행상황을 한번에 파악하기가 수월하다는 장점이 있다. 또한 프로젝트에서 일어나는 모든 일을 추적할 수 있고, 마지막으로 본 이후에 어떤 일이 생겼는지 확인할 수 있다. 이제 하나씩 어떤 의미인지 알아보자.
'기타' 카테고리의 다른 글
Recoil로 상태관리 시작하기 (0) | 2023.05.09 |
---|---|
Git branch 다루기 (0) | 2023.04.12 |
원티드 프론트엔드 프리온보딩 : React [2주차] (0) | 2023.04.10 |
객체 지향 프로그래밍 (OOP) (0) | 2023.03.27 |
코드스테이츠 섹션3 기술면접 예상질문 (0) | 2023.03.13 |