Skip to main content
설명서에 자주 업데이트를 게시하며 이 페이지의 번역이 계속 진행 중일 수 있습니다. 최신 정보는 영어 설명서를 참조하세요.

포크 정보

포크는 관리한 리포지토리의 복사본입니다. 포크는 원본 리포지토리에 영향을 미치지 않고 프로젝트를 변경하도록 해줍니다. 끌어오기 요청을 사용하여 원본 리포지토리에서 업데이트를 가져오거나 원래 리포지토리에 변경 내용을 제출할 수 있습니다.

리포지토리 포크는 리포지토리 복사와 유사하지만 두 가지 주요 차이점이 있습니다.

  • 끌어오기 요청을 사용하여 사용자 소유 포크에서 업스트림 리포지토리라고도 하는 GitHub 인스턴스의 원래 리포지토리로 변경 내용을 제안할 수 있습니다.

  • 업스트림 리포지토리와 포크를 동기화하여 업스트림 리포지토리에서 로컬 포크로 변경 내용을 가져올 수 있습니다.

    리포지토리에 대한 설정과 엔터프라이즈 정책에서 포크를 허용하는 경우 리포지토리 생성 권한이 있는 your GitHub Enterprise Server instance의 개인 계정 또는 조직에 프라이빗 또는 내부 리포지토리를 포크할 수 있습니다.

GitHub Desktop을 사용하여 리포지토리를 포크할 수 있습니다. 자세한 내용은 “GitHub Desktop에서 리포지토리 복제 및 포크”를 참조하세요.

포크를 삭제해도 원래 업스트림 리포지토리는 삭제되지 않습니다. 원본에 영향을 주지 않고 포크를 원하는 대로 변경할 수 있습니다(협력자 추가, 파일 이름 변경, GitHub Pages 페이지 생성).

오픈 소스 프로젝트에서 포크는 업스트림 리포지토리로 다시 제공되기 전에 아이디어 또는 변경 내용을 반복하는 데 종종 사용됩니다. 사용자 소유의 포크를 변경하고 작업을 업스트림 리포지토리와 비교하는 끌어오기 요청을 열면, 업스트림 리포지토리에 대한 푸시 액세스 권한이 있는 모든 사용자에게 끌어오기 요청 분기에 변경 내용을 푸시할 수 있는 권한을 부여할 수 있습니다(분기 삭제 포함). 이렇게 하면 리포지토리 유지 관리자가 병합하기 전에 사용자 소유 포크에서 끌어오기 요청 분기로 로컬에서 커밋하거나 테스트를 실행할 수 있도록 하여 협업 속도가 향상됩니다. 조직에서 소유한 포크에는 푸시 권한을 부여할 수 없습니다.

프라이빗 포크는 업스트림 또는 부모 리포지토리의 사용 권한 구조를 상속합니다. 이를 통해 프라이빗 리포지토리 소유자가 코드에 대한 제어를 유지할 수 있습니다. 예를 들어 업스트림 리포지토리가 프라이빗 리포지토리이고 팀에 대한 읽기/쓰기 액세스 권한을 제공하는 경우 동일한 팀은 프라이빗 업스트림 리포지토리의 모든 포크에 대한 읽기/쓰기 액세스 권한을 갖습니다. 프라이빗 포크에서는 개별 사용 권한이 아닌 팀 권한만 상속됩니다.

기존 리포지토리의 콘텐츠에서 새 리포지토리를 만들되 나중에 변경 내용을 업스트림에 병합하지 않으려는 경우, 리포지토리를 복제하거나 리포지토리가 템플릿인 경우 리포지토리를 템플릿으로 사용할 수 있습니다. 자세한 내용은 “리포지토리 복제” 및 “템플릿에서 리포지토리 만들기”를 참조하세요.

추가 참고 자료