Skip to main content

관리 셸을 사용하여 다른 버전 제어 시스템에서 가져오기

관리 셸을 사용하여 Subversion, Mercurial, Team Foundation 버전 제어를 GitHub Enterprise Server의 Git 리포지토리로 가져올 수 있습니다.

누가 이 기능을 사용할 수 있나요?

Site administrators can use the administrative shell to import data from other version control systems.

Mercurial에서 프로젝트 가져오기

  1. 에 SSH합니다. 인스턴스가 여러 노드로 구성된 경우(예: 고가용성 또는 지역 복제가 구성된 경우) 주 노드에 대한 SSH를 수행합니다. 클러스터를 사용하는 경우 임의 노드에 대해 SSH를 수행할 수 있습니다. HOSTNAME을 인스턴스의 호스트 이름 또는 노드의 호스트 이름이나 IP 주소로 바꿉니다. 자세한 내용은 관리 셸(SSH)에 액세스을(를) 참조하세요.

    Shell
    ssh -p 122 admin@HOSTNAME
    
  2. 아래 명령으로 원시 복제본을 만들어 원본 프로젝트의 URL 및 임시 리포지토리에 대한 경로를 지정합니다.

    $ git-import-hg-raw HG-CLONE-URL/PATH/REPO-NAME.git
    # Creates a new repository with one or more Git refs in "refs/import/" in the specified path.
    

CSV 파일 가져오기 검토

  1. CSV 파일을 사용하여 작성자 및 분기를 다시 작성합니다.

    git-import-rewrite --flavor hg --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
    
  2. 아직 만들지 않은 경우 GitHub Enterprise Server에 새로운 빈 리포지토리를 만듭니다.

  3. 현재 작업 디렉터리를 로컬 리포지토리로 변경합니다.

  4. 가져온 리포지토리를 GitHub Enterprise Server에 푸시합니다.

    git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE
    

Subversion에서 프로젝트 가져오기

  1. 에 SSH합니다. 인스턴스가 여러 노드로 구성된 경우(예: 고가용성 또는 지역 복제가 구성된 경우) 주 노드에 대한 SSH를 수행합니다. 클러스터를 사용하는 경우 임의 노드에 대해 SSH를 수행할 수 있습니다. HOSTNAME을 인스턴스의 호스트 이름 또는 노드의 호스트 이름이나 IP 주소로 바꿉니다. 자세한 내용은 관리 셸(SSH)에 액세스을(를) 참조하세요.

    Shell
    ssh -p 122 admin@HOSTNAME
    
  2. 아래 명령으로 원시 복제본을 만들어 원본 프로젝트의 URL 및 임시 리포지토리에 대한 경로를 지정합니다.

    $ git-import-svn-raw SVN-CLONE-URL /PATH/REPO-NAME.git
    # Creates a new repository with one or more Git refs in "refs/import/" in the specified path.
    

CSV 파일 가져오기 검토

  1. CSV 파일을 사용하여 작성자 및 분기를 다시 작성합니다.

    git-import-rewrite --flavor svn --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
    
  2. 아직 만들지 않은 경우 GitHub Enterprise Server에 새로운 빈 리포지토리를 만듭니다.

  3. 현재 작업 디렉터리를 로컬 리포지토리로 변경합니다.

  4. 가져온 리포지토리를 GitHub Enterprise Server에 푸시합니다.

    git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE
    

Team Foundation 버전 제어에서 프로젝트 가져오기

  1. 에 SSH합니다. 인스턴스가 여러 노드로 구성된 경우(예: 고가용성 또는 지역 복제가 구성된 경우) 주 노드에 대한 SSH를 수행합니다. 클러스터를 사용하는 경우 임의 노드에 대해 SSH를 수행할 수 있습니다. HOSTNAME을 인스턴스의 호스트 이름 또는 노드의 호스트 이름이나 IP 주소로 바꿉니다. 자세한 내용은 관리 셸(SSH)에 액세스을(를) 참조하세요.

    Shell
    ssh -p 122 admin@HOSTNAME
    
  2. 아래 명령으로 원시 복제본을 만들어 원본 프로젝트의 URL 및 임시 리포지토리에 대한 경로를 지정합니다.

    $ git-import-tfs-raw TEAM-FOUNDATION-CLONE-URL /PATH/REPO-NAME.git
    # Creates a new repository with one or more Git refs in "refs/import/" in the specified path.
    

CSV 파일 가져오기 검토

  1. CSV 파일을 사용하여 작성자 및 분기를 다시 작성합니다.

    git-import-rewrite --flavor tfs --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO_NAME.git
    
  2. 아직 만들지 않은 경우 GitHub Enterprise Server에 새로운 빈 리포지토리를 만듭니다.

  3. 현재 작업 디렉터리를 로컬 리포지토리로 변경합니다.

  4. 가져온 리포지토리를 GitHub Enterprise Server에 푸시합니다.

    git push --mirror PUSH-URL-ON-GITHUB-ENTERPRISE
    

추가 참고 자료

  •         [AUTOTITLE](/admin/configuration/configuring-your-enterprise/command-line-utilities#import-and-export)