처럼 프로젝트는 현재 개발 진행중인 프로젝트입니다.
이 가이드는 여러분들에게 이슈, PR 등과 같이 기여에 필요한 내용들을 알려드리기 위해 제작되었습니다.
도움이 필요하시다면 디스코드 지원 서버에서 도와드리겠습니다.
- 저장소를 포크합니다
저장소 우측 상단에 있는 Fork
버튼을 클릭합니다.
여러분이 자유롭게 코드를 수정할 수 있도록 여러분 닉네임으로 복제된 저장소가 생성됩니다.
- 포크한 저장소를 클론합니다
터미널을 열어 아래 명령어를 입력해주시면 소스코드가 담긴 cheoleom
디렉토리가 생성됩니다.
$ git clone https://github.com/<닉네임>/cheoleom.git
- 디펜던시를 설치합니다
먼저 파이썬이 설치되어 있는지 확인해주세요.
필요한 디펜던시들은 프로젝트 루트 폴더에 있는 requirements.txt
에 명시되어있습니다.
$ pip install -r requirements.txt
Note: 모듈들이 전역에 설치되기를 원하지 않으시면 가상환경을 사용하셔도 좋습니다.
- 작업할 브랜치를 새로 만듭니다
main
브랜치를 복제하여 새로운 브랜치를 만듭니다.
브랜치 이름은 버그 수정의 경우 bug/<버그 요약>
, 기능 추가 및 보수의 경우 feature/<기능 이름>
, 기타 코드 개선 작업 등은 maintain/<요약>
으로 해주시면 됩니다.
$ git checkout -b <브랜치 이름> release
.env
파일을 설정합니다.
만약 python-dotenv
모듈이 깔려있지 않다면 먼저 설치해주시기 바랍니다. 프로젝트 폴더 최상단에 .env
파일을 만들고 아래의 양식을 참조해 작성합니다.
BOT_TOKEN= # 봇 토큰, 필수(int)
TEST_GUILD_ID= # 테스트 서버 ID, 선택사항(str)
봇 토큰은 디스코드 개발자 포털에서 받으실 수 있습니다.
- 코드 수정
- 작업하시는 브랜치가 맞는지 확인하고, 해당 브랜치에서 관여하는 내용만 수정해주세요.
- 다른 파일들을 참고하여 코드를 작성해주세요.
코드 스타일이 최대한 엇나가지 않게 작업해주시면 감사하겠습니다. - 커밋 전에
flake8
으로 포맷팅이 잘못된 부분이 없는지 확인해주세요.
커밋 훅으로 등록하는 것도 좋은 방법입니다.
- 커밋
- 각 커밋에는 적당량의 변경사항이 들어가야합니다.
한 커밋에 너무 많거나 적은 내용이 들어가는 것은 자제해주세요. - 커밋 메시지를 대충 쓰지마세요.
커밋 메시지는 Conventional Commits v1.0.0을 따릅니다.
커밋 메시지는 여러 줄로 쓰는 것이 좋으며, 어떤 내용을 수정했는지가 필수로 들어가야합니다.
부적절한 커밋 메시지는 PR 거부 사유가 될 수 있습니다.
- 테스트
- PR을 작성하시기 전, 코드가 정상적으로 작동하는지 테스트하는 과정이 필요합니다.
본인의 토큰을 사용하여 원하는대로 작동하는지, 오류가 발생하지는 않는지 꼭 확인해주세요.
- 커밋들을 푸시해주세요
모든 변경 사항들이 커밋되었는지 확인하시고 깃허브에 커밋들을 푸시합니다.
$ git push origin <브랜치명>
- PR을 생성해주세요
main
브랜치를 베이스로 하여 PR을 생성합니다.
경우에 따라 리뷰어가 직접 커밋을 추가할 수도 있으니 Allow edits from maintainer
를 체크해주세요.
리뷰어 목록
- PR 내용을 작성합니다
형식은 자유이나 내용에는 무조건 어떤 것을 해결하기 위한 PR인지, 어떤 어떤 내용들을 수정했는지를 꼭 포함해야합니다.
위 내용이 포함되지 않은 경우 PR이 거부될 수 있습니다.
- 리뷰를 기다리세요
리뷰어가 코드에서 수정할 부분이 있다고 생각하면 수정을 요청할 수 있습니다.
리뷰어가 코드에 더 이상 수정해야할 것이 없다고 판단하면 PR을 승인, main
브랜치에 머지됩니다. 이후 얼마 지나지 않아 봇의 재가동이 이루어지며, 변경사항이 봇에 적용됩니다.