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

GitHub Enterprise Importer에 대한 마이그레이션 지원

GitHub Enterprise Importer는 지원되는 원본에서 다양한 데이터를 GitHub로 마이그레이션합니다.

참고: GitHub Enterprise Importer은(는) 현재 공개 베타 버전이며 변경될 수 있습니다.

GitHub Enterprise Importer에 대한 마이그레이션 지원 정보

GitHub Enterprise Importer은(는) 지원되는 마이그레이션 원본에서 GitHub Enterprise Cloud로 마이그레이션할 수 있습니다. 각 마이그레이션에 포함된 데이터는 원본에 따라 달라집니다.

GitHub Enterprise Importer는 다음 원본에서 GitHub Enterprise Cloud로 마이그레이션을 지원합니다.

  • ADO(Azure DevOps) 클라우드
  • Bitbucket Server 및 Bitbucket Data Center 5.14 이상
  • GitHub.com
  • GitHub Enterprise Server (GHES) 3.4.1 이상

베타 중에는 모든 원본에 적용되는 Importer에 대한 알려진 제한 사항이 있습니다.

Azure DevOps 마이그레이션 지원

마이그레이션 원본이 Azure DevOps인 경우 리포지토리를 마이그레이션할 수 있습니다.

GitHub Enterprise Importer만 사용하여 Azure DevOps Server 아닌 Azure DevOps Cloud에서 마이그레이션할 수 있습니다. 현재 Azure DevOps Server 사용하고 GitHub로 마이그레이션하려는 경우 먼저 Azure DevOps Cloud로 마이그레이션할 수 있습니다. 자세한 내용은 Azure 사이트에서 Azure DevOps로 마이그레이션 을 참조하세요.

현재 Azure DevOps에서 GitHub Enterprise Cloud로 다음 리포지토리 데이터 마이그레이션만 지원합니다.

  • Git 원본(커밋 기록 포함)
  • 끌어오기 요청
  • 끌어오기 요청에 대한 사용자 기록
  • 끌어오기 요청의 작업 항목 링크
  • 끌어오기 요청의 첨부 파일
  • 리포지토리에 대한 분기 보호(사용자 범위 분기 보호는 포함되지 않음)

Azure Pipelines를 GitHub Actions로 마이그레이션하려면 GitHub 계정 관리자에게 문의하세요.

Bitbucket 서버 마이그레이션 지원

참고: GitHub Enterprise Importer를 사용하여 Bitbucket Server에서 마이그레이션하는 작업은 현재 프라이빗 베타로 제공되며 변경될 수 있습니다. 베타에 대한 액세스를 요청하려면 Bitbucket 서버 마이그레이션 대기 목록 조인을 참조하세요.

Bitbucket 서버에서의 마이그레이션은 Bitbucket Server 또는 Bitbucket Data Center 버전 5.14 이상에서만 지원됩니다.

마이그레이션 원본이 Bitbucket 서버인 경우 리포지토리를 마이그레이션할 수 있습니다. 현재 다음 리포지토리 데이터를 Bitbucket Server에서 GitHub Enterprise Cloud로 마이그레이션하는 것만 지원합니다.

  • Git 원본(커밋 기록 포함)
  • 끌어오기 요청(끌어오기 요청 검토, 필수 검토자, 메모 및 첨부 파일 포함, 파일 수준 주석 제외)

현재 다음 데이터는 마이그레이션 되지 않습니다 .

  • 끌어오기 요청에 대한 파일 수준 주석
  • 분기 권한
  • 커밋 설명
  • 리포지토리 설정

GitHub Enterprise Importer은(는) Bitbucket 서버에서 CI 파이프라인을 마이그레이션하지 않습니다.

GitHub.com 마이그레이션 지원

마이그레이션 원본이 GitHub.com인 경우 개별 리포지토리 또는 전체 조직을 마이그레이션할 수 있습니다.

organization 마이그레이션하면 대상 엔터프라이즈 계정 내에 새 organization 만들어집니다. 그런 다음, 다음 데이터가 새 organization 마이그레이션됩니다.

  • Teams
  • 리포지토리
  • 리포지토리에 대한 팀 액세스
  • 멤버 권한
  • 조직 수준 웹후크
  • organization 만든 새 리포지토리의 기본 분기 이름

모든 리포지토리는 프라이빗 표시 유형으로 마이그레이션됩니다. 리포지토리의 표시 유형을 공용 또는 내부로 설정하려는 경우 마이그레이션 후 UI 또는 API를 사용하여 이 작업을 수행할 수 있습니다.

팀 멤버 자격은 마이그레이션 되지 않습니다 . 마이그레이션 후에는 마이그레이션된 팀에 구성원을 추가해야 합니다. 자세한 내용은 "GitHub Enterprise Importer를 사용하여 GitHub 제품 간 마이그레이션"을 참조하세요.

참고: 와 같은 @octo-org/octo-team팀에 대한 참조는 조직 마이그레이션의 일부로 업데이트 되지 않습니다 . 이로 인해 파일이 예상대로 작동하지 않는 등 CODEOWNERS 대상 조직에서 문제가 발생할 수 있습니다. 이러한 문제를 방지하고 resolve 방법에 대한 자세한 내용은 "GitHub Enterprise Importer를 사용하여 마이그레이션 문제 해결"을 참조하세요.

직접 또는 organization 마이그레이션의 일부로 리포지토리를 마이그레이션하는 경우 다음 데이터만 마이그레이션됩니다.

  • Git 원본(커밋 기록 포함)
  • 끌어오기 요청
  • 문제
  • 마일스톤
  • Wikis
  • 리포지토리 수준의 프로젝트(클래식)
  • GitHub Actions 워크플로
  • 커밋 설명
  • 활성 웹후크
  • 리포지토리 토픽
  • 리포지토리 설정
    • 분기 보호(자세한 내용은 "분기 보호" 참조)
    • GitHub Pages 설정
    • 자동 링크 참조
    • GitHub Advanced Security 설정
    • 끌어오기 요청 설정
      • 헤드 분기 자동 삭제
      • 자동 병합 허용
      • 병합 커밋 허용(커밋 메시지 설정이 기본 메시지로 다시 설정됨)
      • 스쿼시 병합 허용(커밋 메시지 설정이 기본 메시지로 다시 설정됨)
      • 다시 지정 병합 허용
  • 릴리스(리포지토리당 최대 10GB)
  • 위의 데이터에 대한 사용자 기록

현재 다음 데이터는 마이그레이션 되지 않습니다 .

  • Git LFS 개체 및 큰 이진 파일(Git LFS을 사용하는 리포지토리는 여전히 지원됩니다. "GitHub Enterprise Importer의 제한 사항"을 참조하세요.
  • GitHub Actions 비밀, 환경 또는 워크플로 실행 기록
  • 웹후크 비밀
  • GitHub Codespaces 비밀
  • Code scanning 결과
  • secret scanning 결과의 수정 상태
  • Dependabot 경고
  • Dependabot 비밀
  • 조직 수준의 프로젝트(클래식)
  • 모든 Projects(새 프로젝트 환경)
  • 리포지토리 수준의 토론
  • GitHub Packages의 패키지
  • GitHub 앱
  • 리포지토리 간의 포크 관계("포크 정보"참조)
  • 리포지토리에 대한 사용자 액세스

리포지토리를 직접 마이그레이션하는 경우 리포지토리에 대한 팀 및 팀 액세스는 마이그레이션되지 않습니다.

분기 보호

분기 보호는 지정된 규칙 집합을 특정 분기 이름 또는 분기 이름 패턴에 적용합니다. 자세한 내용은 "About protected branches"을 참조하세요.

분기 보호는 항상 마이그레이션되지만 특정 규칙은 마이그레이션되지 않습니다. 다음 분기 보호 규칙은 마이그레이션되지 않습니다.

  • 특정 행위자가 필요한 끌어오기 요청을 바이패스하도록 허용
  • 최신 푸시의 승인 필요
  • 병합 전 배포 성공 필요
  • 분기 잠금
  • 일치하는 분기를 만드는 푸시 제한
  • 강제 푸시 허용

또한 다음과 같은 제한 사항이 적용됩니다.

  • 분기 보호 규칙에서 필요에 따라 "끌어오기 요청 검토를 해제할 수 있는 사용자 제한"과 같이 규칙에서 제외되는 사람, 팀 또는 앱을 지정할 수 있는 경우 예외는 마이그레이션되지 않습니다.
  • "강제 푸시 허용" 규칙이 "강제 푸시 수 있는 사용자 지정" 모드에서 사용하도록 설정되면 규칙이 마이그레이션되지 않습니다.

GitHub Enterprise Server 마이그레이션 지원

마이그레이션 원본이 GitHub Enterprise Server인 경우 리포지토리를 마이그레이션할 수 있습니다.

GitHub Enterprise Server(GHES)에서 마이그레이션하려면 GHES 버전 3.4.1 이상이 있어야 합니다.

항목GHES 3.4.1+GHES 3.5.0 이상
Git 원본(커밋 기록 포함)XX
끌어오기 요청XX
문제XX
마일스톤XX
WikisXX
리포지토리 수준의 프로젝트(클래식)XX
GitHub Actions 워크플로XX
커밋 설명XX
활성 웹후크XX
분기 보호XX
GitHub Pages 설정XX
위의 데이터에 대한 사용자 기록XX
릴리스X

리포지토리당 크기 제한은 GHES 버전에 따라 적용됩니다.

제한GHES <3.8.0GHES 3.8.0 이상
Git 원본2GB10GB
메타데이터2GB10GB

현재 다음 데이터는 마이그레이션 되지 않습니다 .

  • Git LFS 개체 및 큰 이진 파일(Git LFS을 사용하는 리포지토리는 여전히 지원됩니다. "GitHub Enterprise Importer의 제한 사항"을 참조하세요.
  • GitHub Actions 비밀, 환경 또는 워크플로 실행 기록
  • 웹후크 비밀
  • GitHub Codespaces 비밀
  • Code scanning 결과
  • secret scanning 결과의 수정 상태
  • Dependabot 경고
  • Dependabot 비밀
  • 조직 수준의 프로젝트(클래식)
  • 모든 Projects(새 프로젝트 환경)
  • 리포지토리 수준의 토론
  • GitHub Packages의 패키지
  • GitHub 앱
  • 리포지토리 간의 포크 관계("포크 정보"참조)
  • Teams
  • 리포지토리에 대한 사용자 또는 팀 액세스
  • 끌어오기 요청에 대한 리포지토리 설정

제한 사항

GitHub Enterprise Importer에서 마이그레이션할 수 있는 항목에는 제한이 있습니다. 일부는 GitHub.com의 제한으로 인해 발생하지만 다른 일부는 GitHub Enterprise Importer 자체의 제한 사항입니다.

GitHub.com의 제한 사항

  • 단일 Git 커밋에 대한 2GB 크기 제한: Git 리포지토리의 단일 커밋은 2GB보다 클 수 없습니다. 커밋이 2GB보다 큰 경우 커밋을 각각 2GB 이하인 더 작은 커밋으로 분할해야 합니다.
  • Git 참조에 대한 255 바이트 제한: 일반적으로 "ref"라고 하는 단일 Git 참조는 255바이트보다 큰 이름을 가질 수 없습니다. 일반적으로 참조 길이는 255자를 초과할 수 없지만 이모지와 같은 비 ASCII 문자는 둘 이상의 바이트를 사용할 수 있습니다. Git 참조가 너무 크면 명확한 오류 메시지가 반환됩니다.
  • 100MB 파일 크기 제한: Git 리포지토리의 단일 파일은 100MB를 초과할 수 없습니다. 대용량 파일을 저장하려면 Git LFS를 사용하는 것이 좋습니다. 자세한 내용은 "대형 파일 관리"을 참조하세요.

GitHub Enterprise Importer의 제한 사항

  • Git 리포지토리에 대한 10GB 크기 제한: 이 제한은 소스 코드에만 적용됩니다. 리포지토리의 크기를 검사하려면 git-sizer 도구를 사용하고 Blob의 총 크기를 검사.
  • 메타데이터에 대한 10GB 제한: Importer은(는) 10GB 이상의 메타데이터를 사용하여 리포지토리를 마이그레이션할 수 없습니다. 메타데이터에는 문제, 끌어오기 요청, 릴리스 및 첨부 파일이 포함됩니다. 대부분의 경우 큰 메타데이터는 릴리스에 연결된 이진 자산으로 인해 발생합니다. 명령 플래그 --skip-releases 를 사용하여 마이그레이션에서 릴리스를 migrate-repo 제외한 다음 마이그레이션 후 릴리스를 수동으로 이동할 수 있습니다.
  • Git LFS 개체가 마이그레이션되지 않음: Importer는 Git LFS를 사용하는 리포지토리를 마이그레이션할 수 있지만 LFS 개체 자체는 마이그레이션되지 않습니다. 마이그레이션이 완료된 후 후속 작업으로 마이그레이션 대상으로 푸시할 수 있습니다. 자세한 내용은 "리포지토리 복제"을 참조하세요.
  • 후속 작업 필요: GitHub 제품 간에 마이그레이션할 때 특정 설정은 마이그레이션되지 않으며 새 리포지토리에서 다시 구성해야 합니다. 각 마이그레이션 후에 완료해야 하는 후속 작업 목록은 "GitHub Enterprise Importer를 사용하여 GitHub 제품 간 마이그레이션"을 참조하세요.
  • 지연된 코드 검색 기능: 리포지토리를 마이그레이션한 후 검색 인덱스를 다시 인덱싱하는 데 몇 시간이 걸릴 수 있으며 코드 검색은 다시 인덱싱이 완료될 때까지 예기치 않은 결과를 반환할 수 있습니다.