Skip to main content

리포지토리가 삭제되거나 표시 여부가 변경되면 포크는 어떻게 되나요?

리포지토리를 삭제하거나 표시 여부를 변경하면 리포지토리의 포크에 영향을 줍니다.

Warning

  • 프라이빗 리포지토리에 대한 사용자의 액세스를 제거하면 해당 프라이빗 리포지토리의 모든 포크가 삭제됩니다. 프라이빗 리포지토리의 로컬 클론은 유지됩니다. 프라이빗 리포지토리에 대한 팀의 액세스가 취소되거나 프라이빗 리포지토리에 대한 액세스 권한이 있는 팀이 삭제되고 팀 멤버가 다른 팀을 통해 리포지토리에 액세스할 수 없는 경우 리포지토리의 프라이빗 포크가 삭제됩니다.
  • LDAP 동기화를 사용하는 경우 리포지토리에서 사용자를 제거하면 액세스 권한을 잃게 되지만 해당 포크는 삭제되지 않습니다. 사용자가 3개월 이내에 원래 조직 리포지토리에 액세스 권한이 있는 팀에 추가되면 다음 동기화 시 포크에 대한 액세스 권한이 자동으로 복원됩니다.
  • 리포지토리에 대한 액세스 권한이 손실된 사용자가 기밀 정보 또는 지적 재산을 삭제하도록 할 책임이 있습니다.
  • 프라이빗 또는 내부 리포지토리에 대한 관리자 권한이 있는 사람은 해당 리포지토리의 포크를 허용하지 않을 수 있으며 조직 소유자는 조직의 모든 프라이빗 또는 내부 리포지토리의 포크를 허용하지 않을 수 있습니다. 자세한 내용은 "조직에 대한 포크 정책 관리" 및 "리포지토리에 대한 포크 정책 관리"의 내용을 참조하세요.

프라이빗 리포지토리 삭제

프라이빗 리포지토리를 삭제하면 모든 프라이빗 포크도 삭제됩니다.

퍼블릭 리포지토리 삭제

퍼블릭 리포지토리를 삭제하면 가장 오래되고 활성 상태인 퍼블릭 포크가 새 업스트림 리포지토리로 선택됩니다. 다른 모든 리포지토리는 이 새 업스트림에서 포크되고 후속 끌어오기 요청은 이 새 업스트림 리포지토리로 이동합니다.

프라이빗 포크 및 권한

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

Note

조직에 대한 기본 권한을 변경하면 프라이빗 포크에 대한 사용 권한이 자동으로 업데이트되지 않습니다. 자세한 내용은 “조직에 대한 기본 권한 설정” 항목을 참조하세요.

퍼블릭 리포지토리를 프라이빗 리포지토리로 변경

퍼블릭 리포지토리가 프라이빗으로 전환되면 퍼블릭 포크가 새 네트워크로 분할됩니다. 퍼블릭 리포지토리 삭제와 마찬가지로 기존 퍼블릭 포크 중 하나가 새 업스트림 리포지토리로 선택되고 다른 모든 리포지토리는 이 새 업스트림에서 포크됩니다. 후속 끌어오기 요청이 이 새 업스트림 리포지토리로 이동합니다.

즉, 퍼블릭 리포지토리의 포크는 업스트림 리포지토리를 프라이빗으로 만든 후에도 별도의 리포지토리 네트워크에서 퍼블릭으로 유지됩니다. 이렇게 하면 포크 소유자가 중단 없이 계속 작업하고 협업할 수 있습니다. 이러한 방식으로 퍼블릭 포크를 별도의 네트워크로 이동하지 않은 경우, 해당 포크의 소유자는 이전에 해당 권한이 필요하지 않았더라도 변경 내용을 끌어오고 업스트림 리포지토리(지금은 프라이빗)에 끌어오기 요청을 제출하기 위한 적절한 액세스 권한을 얻어야 합니다.

퍼블릭 리포지토리에서 익명 Git 읽기 권한이 사용하도록 설정되어 있고 리포지토리가 프라이빗으로 설정된 경우, 모든 리포지토리의 포크는 익명 Git 읽기 권한을 잃고 사용되지 않는 기본 설정으로 돌아갑니다. 포크된 리포지토리가 퍼블릭으로 설정되면, 리포지토리 관리자는 익명 Git 읽기 권한을 다시 사용하도록 설정할 수 있습니다. 자세한 정보는 "리포지토리에 대한 익명 Git 읽기 권한 사용"을(를) 참조하세요.

프라이빗 리포지토리 삭제

퍼블릭 리포지토리를 프라이빗으로 설정한 다음 삭제하면 해당 퍼블릭 포크는 별도의 네트워크에 계속 존재하게 됩니다.

프라이빗 리포지토리를 퍼블릭 리포지토리로 변경

프라이빗 리포지토리가 공개되면 이전에 해당 리포지토리의 프라이빗 포크로 푸시된 커밋을 포함하여 해당 리포지토리의 모든 커밋이 새로운 퍼블릭 리포지토리 네트워크로 마이그레이션되어 모든 사용자가 볼 수 있게 됩니다. 이전에 만든 모든 프라이빗 포크는 비공개로 유지되지만 공개된 원래 리포지토리와 연결이 끊어집니다. 각 프라이빗 포크는 별도의 프라이빗 리포지토리가 되고 자체적으로 독립적인 리포지토리 네트워크를 만듭니다. 이러한 네트워크에 대한 새로운 변경 사항은 퍼블릭으로 공개되었던 원래 리포지토리에서 액세스할 수 없습니다.

퍼블릭 리포지토리 삭제

프라이빗 리포지토리를 퍼블릭으로 설정한 다음 삭제하면 해당 프라이빗 포크는 별도의 네트워크에 독립 실행형 프라이빗 리포지토리로 계속 존재하게 됩니다.

내부 리포지토리의 표시 여부 변경

엔터프라이즈에 대한 정책에서 포크를 허용하는 경우 내부 리포지토리의 포크는 프라이빗이 됩니다. 내부 리포지토리의 표시 여부를 변경하는 경우 조직 또는 개인 계정이 소유한 포크는 프라이빗으로 유지됩니다.

내부 리포지토리 삭제

내부 리포지토리의 표시 여부를 변경한 다음 리포지토리를 삭제하면 포크가 별도의 네트워크에 계속 존재하게 됩니다.

추가 참고 자료