기여하기

기여하기 (Contributing)

아래는 Ant Design에 기여하기 위한 가이드라인이에요. 이슈나 pull request를 만들기 전에 이 가이드를 몇 분 정도 읽어 두면 좋아요.

출처: 문서

본문

다음은 Ant Design에 기여하기 위한 일련의 가이드라인이에요. 이슈나 pull request를 만들기 전에 몇 분 동안 이 가이드를 읽어 보세요.

행동 강령 (Code of Conduct)

프로젝트 참여자라면 지켜야 한다고 기대하는 행동 강령을 채택하고 있어요. 어떤 행동이 용인되고 용인되지 않는지 이해할 수 있도록 전문을 읽어 보세요.

열린 개발 (Open Development)

Ant Design의 모든 작업은 GitHub에서 직접 이루어져요. 핵심 팀 멤버와 외부 기여자 모두 같은 리뷰 과정을 거치는 pull request를 보냅니다.

브랜치 구조 (Branch Organization)

릴리스 일정에 따라 master와 feature 두 브랜치를 유지해요. 버그 수정 pull request라면 master 브랜치를 기준으로 보내고, 기능(feature) pull request라면 feature 브랜치를 기준으로 보내 주세요.

버그 (Bugs)

버그 추적에는 GitHub Issues를 사용하고 있어요. 버그를 가장 확실하게 수정받는 방법은 이슈 헬퍼를 사용하고, 이 템플릿으로 재현 절차를 제공하는 거예요.

버그를 신고하기 전에 기존 이슈를 검색해 보고, FAQ도 읽어 보세요.

변경 제안하기

퍼블릭 API를 바꾸거나 새 기능을 도입하려 한다면 이슈 헬퍼를 사용해 기능 요청 이슈를 만드는 것도 권장해요.

새 API에 기여하고 싶다면 API 명명 규칙을 참고해서 이름을 지어 주세요.

첫 번째 Pull Request

첫 Pull Request에 도전하고 있나요? 이 무료 비디오 시리즈에서 배울 수 있어요:

GitHub 오픈소스 프로젝트에 기여하는 방법

기여 과정에 익숙해질 수 있도록, 비교적 범위가 좁은 버그나 작은 기능이 담긴 good first issues 목록을 준비해 두었어요. 시작하기 좋은 지점이에요.

이슈를 고치기로 결정했다면, 혹시 누군가 이미 수정 작업을 하고 있는지 코멘트 스레드를 꼭 확인해 보세요. 지금 아무도 작업하고 있지 않다면, 다른 사람이 실수로 같은 작업을 중복하지 않도록 이 이슈를 작업하겠다고 코멘트를 남겨 주세요.

누군가 이슈를 맡았지만 2주 이상 후속 작업이 없다면, 이어받아도 괜찮지만 역시 코멘트를 남겨 두어야 해요.

Pull Request 보내기

핵심 팀이 pull request를 계속 지켜보고 있어요. 여러분의 pull request를 리뷰한 뒤 병합하거나 변경을 요청하거나, 설명과 함께 닫을 거예요.

Pull request를 제출하기 전에 다음이 모두 끝났는지 확인하세요:

  1. 저장소를 fork 하고 올바른 브랜치에서 브랜치를 만드세요.
  2. 저장소 루트에서 npm install을 실행하세요.
  3. 테스트해야 하는 버그를 고치거나 테스트할 코드를 추가했다면, 테스트를 추가하세요!
  4. 테스트 스위트가 통과하는지 확인하세요 (npm run test). 팁: 개발 중에는 npm test -- --watch TestName이 유용해요.
  5. npm test -- -u로 jest 스냅샷을 업데이트하고, 변경사항이 있다면 그 변경도 함께 커밋하세요.
  6. UI 변경이 npm run test:image를 통과하는지 확인하세요. npm run test:image -- -u로 UI 스냅샷을 업데이트하고 변경사항이 있다면 커밋하세요. UI 테스트는 Docker 기반이므로 플랫폼에 맞는 설치본을 받아야 해요
  7. 코드가 린트되는지 확인하세요 (npm run lint). 팁: git commit할 때 린트가 자동으로 실행돼요 (Git Hooks 사용).
  8. 마지막으로 모든 GitHub CI 검사가 통과하는지 확인하세요. 실패하면 detail을 클릭해 세부 내용을 보고 이유를 확인하세요.

react-component로 Pull Request 보내기:

antd의 컴포넌트는 react-component를 기반으로 하기 때문에, 때로는 해당 react-component 저장소로 pull request를 보내야 할 수도 있어요. 버그 수정 pull request라면 병합 후 핵심 팀이 그 컴포넌트의 패치 릴리스를 가능한 한 빨리 배포해서, 프로젝트에서 antd만 다시 설치하면 최신 패치 릴리스를 받을 수 있어요. 기능(feature) pull request라면 병합 후 핵심 팀이 마이너 릴리스를 배포하므로, Ant Design에 또 다른 pull request를 올려 의존성, 문서, TypeScript 인터페이스(필요하다면)를 업데이트해야 해요.

개발 워크플로우

패키지 관리 도구로는 npm이나 yarn을 권장해요.

antd 코드를 clone 한 뒤 다음 명령으로 의존성을 설치하세요:

아래의 일반적인 명령들도 실행할 수 있어요:

로컬에서 실행하기

Ant Design 웹사이트를 로컬에서 실행합니다.

코드 스타일 확인

테스트 실행

전체 테스트 스위트를 실행합니다. (NODE_ENV 환경 변수가 설정되어 있으면 문제가 생길 수 있으니 해제해 두세요.)

컴파일

TypeScript 코드를 lib과 es 디렉터리로 컴파일합니다.

빌드

antd의 UMD 빌드를 만듭니다.

개발 도구

콜라보레이터 되기

활발하게 기여하고 있고 Ant Design 팀과 오픈소스 워크플로우에서 함께 일하고 싶다면 외부 콜라보레이터로 지원할 수 있어요.

antd 기여자가 되기 위한 다음 기여 가이드도 참고할 수 있어요:

더 알아보기 (Learn more)