개발/프로그래머스 데브코스

프로그래머스 데브코스 61일차 with. TS 웹 풀스택

눌지 2024. 7. 1. 14:00

📚요약

지난 시간에 이어 오프 소스를 배워볼 건데 이번 시간에는 깃허브와 관련된 기능까지 함께 알아보겠습니다.

 

📖Open Source(with. Github)

📄깃허브 오픈 소스 가이드

깃허브에서 제공하는 사이트에서 자세하게 볼 수 있습니다. 오픈 소스에 대한 내용과 깃허브에서 오픈 소스를 위해 어떤 기능을 제공하고 있는지 등등 다양한 정보를 제공합니다.

 

오픈소스의 법적 측면

오픈소스의 법적 측면과 당신이 하지 않은 몇가지 사항에 대해 궁금해하는 모든 것입니다.

opensource.guide

 

📄문서 구조

  • 기본 문서
    • LICENSE.md (LICENSE.txt) : 오픈소스 라이선스 전문을 명시하는 문서. 최상위 디렉토리에 존재.
  • 추가 문서
    • README.md : 프로젝트 코드의 목적 및 사용 방법을 설명하는 문서
    • COPYRIGHT.txt : 저작권이 적혀있어 문서
    • NOTICE.txt : 오픈 소스 라이선스의 개요를 나타내는 문서
    • Contiributing.md : 프로젝트에 기여할 수 있는 방법이 설명된 문서
    • Code-of-Conduct.md : 행동 지침 문서

📑커뮤니티(= 오픈 소스 프로젝트) 체크리스트

깃허브는 건전한 커뮤니티 환경을 만드는 것을 추구하기 때문에 이를 위한 체크리스트를 제공합니다. 바로 레포지토리의 INSIGHT 탭 > Community Standards를 통해 확인해 볼 수 있습니다.

INSIGHTS 탭

 

📄깃허브 이슈(Issue)

깃허브에서 이슈란 프로젝트에서 발생할 수 있는 모든 활동에 대한 것입니다. 예를 들어 기획, 작업, 추가, 버그, 개선, 질문 등등 다양한 종류의 이슈가 있습니다.

ISSUE 탭

깃허브에서 이슈는 크게 두 가지로 분류합니다.

  1. Open : 열려있는 이슈 == 진행 중이거나 계획 단계의 이슈
  2. Close : 닫혀있는 이슈 == 해결되거나 중단된 이슈

이슈들은 다양한 사람들에 의해서도 생기는데 이때 문제가 되는 것이 문서의 형식입니다. 자유롭게 이슈를 작성하는 것도 좋지만 다양한 사람들이 보는 입장에서 통일되면 더 좋을 것 같습니다. 그렇기에 위에서 봤던 커뮤니티 체크리스트에 Issue Templetes가 존재하는 이유입니다.

 

📄깃허브 풀 리퀘스트(Pull Request)

브랜치가 브랜치에게 병합을 요청하는 것을 Pull Request라고 합니다. 기여자가 다른 버전을 만들어보고 문제가 없고 괜찮은 것 같으면 기존 프로젝트 진행자에게 요청하는 경우에도 사용합니다. 영어 이름을 줄여서 PR이라고도 부릅니다. 자세한 내용은 공식 홈페이지를 참고하면 좋을 것 같습니다.

 

끌어오기 요청 정보 - GitHub Docs

끌어오기 요청을 사용하면 GitHub의 리포지토리에서 분기로 푸시한 변경 내용에 대해 다른 사용자에게 알릴 수 있습니다. 끌어오기 요청이 열리면 공동 작업자와 잠재적인 변경 내용을 논의 및

docs.github.com

 

이슈와 마찬가지로 PR도 다양한 방식으로 존재할 수 있기 때문에 이를 위한 pull request templetes가 체크 리스트에 존재합니다.

 

🍯tip! pr 된 코드나 커밋된 코드에는 코드 리뷰를 할 수 있는 기능이 있습니다.
코드 리뷰를 할 수 있는 버튼

 

📄깃허브 토론장(Discussions)

오픈 소스라면 코드뿐만 아니라 다양한 질문이나 정보를 공유할 수 있는 무언가가 필요한데 이를 충족해 주는 공간입니다. 쉽게 이해하면 stackoverflow처럼 질문도 하고 그에 대한 고민이나 답변을 같이 고민해 볼 수 있는 공간 + 공지를 볼 수 있는 공간으로 이해하면 될 것 같습니다. 하지만 차이점은 각 사람마다 Maintainer, Collaborator 등 다양한 책임을 가진 것을 볼 수 있습니다.

https://github.com/hubotio/hubot/discussions/

이는 다음 시간에 배워보겠습니다.

 

다음 시간에 계속...

 

출처 & 참고

김송아 강사님의 강의