Skip to main content

このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2022-10-12. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの向上、新機能の向上を図るために、最新バージョンの GitHub Enterprise にアップグレードします。 アップグレードに関するヘルプについては、GitHub Enterprise サポートにお問い合わせく� さい

サードパーティのバージョン コントロール システ� からのデータのインポート

git-import スイートのツールを使用すると、Subversion、Mercurial、Team Foundation Version Control から GitHub Enterprise Server 上の Git リポジトリにインポートできます。

Mercurialからのプロジェクトのインポート

  1. SSH into your GitHub Enterprise Server instance. If your instance comprises multiple nodes, for example if high availability or geo-replication are configured, SSH into the primary node. If you use a cluster, you can SSH into any node. For more information about SSH access, see "Accessing the administrative shell (SSH)."

    $ 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.
  3. /PATH/REPO-NAME.git/git-import/raw-authors.csv でコンマ区切り (CSV) ファイルを確認します。 以下の列が含まれているはずです。

    • ID: 元のリポジトリに� �納されている作成者、その後に一意識別子が続きます
    • NAME: 元のリポジトリに� �納されている作成者

    元のリポジトリの作成者をメール アドレスと名前にマップするには、ID,(ignored),GIT_EMAIL,GIT_NAME 列を含む新しい CSV ファイルを作成します。このファイルでは、"ID" による任意の作成者情� �が "GIT_EMAIL" と "GIT_NAME" に置き換えられます。

    例:

    • 元の作成者 ID: octocat@111111-2222-3333-4444-55555555555

    • 新しいメール アドレス: octocat@github.com

    • 新しい名前: The Octocat

      オリジナルの作者を新しいGitユーザにマップするには、CSVファイルに以下の行が含まれていなければなりません。

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. CSV ファイルを使って作者とブランチを書き直します:

    $ git-import-rewrite --flavor hg --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
  5. GitHub Enterprise Server に新しい空のリポジトリを作成します (ま� 作成していない� �合)。

  6. ワーキングディレクトリをローカルのリポジトリに変更します。

  7. インポートされたリポジトリを GitHub Enterprise Server にプッシュします。

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

SubVersionからのプロジェクトのインポート

  1. SSH into your GitHub Enterprise Server instance. If your instance comprises multiple nodes, for example if high availability or geo-replication are configured, SSH into the primary node. If you use a cluster, you can SSH into any node. For more information about SSH access, see "Accessing the administrative shell (SSH)."

    $ 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.
  3. /PATH/REPO-NAME.git/git-import/raw-authors.csv でコンマ区切り (CSV) ファイルを確認します。 以下の列が含まれているはずです。

    • ID: 元のリポジトリに� �納されている作成者、その後に一意識別子が続きます
    • NAME: 元のリポジトリに� �納されている作成者

    元のリポジトリの作成者をメール アドレスと名前にマップするには、ID,(ignored),GIT_EMAIL,GIT_NAME 列を含む新しい CSV ファイルを作成します。このファイルでは、"ID" による任意の作成者情� �が "GIT_EMAIL" と "GIT_NAME" に置き換えられます。

    例:

    • 元の作成者 ID: octocat@111111-2222-3333-4444-55555555555

    • 新しいメール アドレス: octocat@github.com

    • 新しい名前: The Octocat

      オリジナルの作者を新しいGitユーザにマップするには、CSVファイルに以下の行が含まれていなければなりません。

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. CSV ファイルを使って作者とブランチを書き直します:

    $ git-import-rewrite --flavor svn --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
  5. GitHub Enterprise Server に新しい空のリポジトリを作成します (ま� 作成していない� �合)。

  6. ワーキングディレクトリをローカルのリポジトリに変更します。

  7. インポートされたリポジトリを GitHub Enterprise Server にプッシュします。

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

Team Foundation Version Controlからのプロジェクトのインポート

  1. SSH into your GitHub Enterprise Server instance. If your instance comprises multiple nodes, for example if high availability or geo-replication are configured, SSH into the primary node. If you use a cluster, you can SSH into any node. For more information about SSH access, see "Accessing the administrative shell (SSH)."

    $ 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.
  3. /PATH/REPO-NAME.git/git-import/raw-authors.csv でコンマ区切り (CSV) ファイルを確認します。 以下の列が含まれているはずです。

    • ID: 元のリポジトリに� �納されている作成者、その後に一意識別子が続きます
    • NAME: 元のリポジトリに� �納されている作成者

    元のリポジトリの作成者をメール アドレスと名前にマップするには、ID,(ignored),GIT_EMAIL,GIT_NAME 列を含む新しい CSV ファイルを作成します。このファイルでは、"ID" による任意の作成者情� �が "GIT_EMAIL" と "GIT_NAME" に置き換えられます。

    例:

    • 元の作成者 ID: octocat@111111-2222-3333-4444-55555555555

    • 新しいメール アドレス: octocat@github.com

    • 新しい名前: The Octocat

      オリジナルの作者を新しいGitユーザにマップするには、CSVファイルに以下の行が含まれていなければなりません。

      octocat@111111-2222-3333-4444-55555555555, ,octocat@github.com,The Octocat

  4. CSV ファイルを使って作者とブランチを書き直します:

    $ git-import-rewrite --flavor tfs --authors /PATH/AUTHORS-MAP-FILE.csv /PATH/REPO-NAME.git
  5. GitHub Enterprise Server に新しい空のリポジトリを作成します (ま� 作成していない� �合)。

  6. ワーキングディレクトリをローカルのリポジトリに変更します。

  7. インポートされたリポジトリを GitHub Enterprise Server にプッシュします。

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

参考資料