Skip to main content

コマンド ラインを使って外部の Git リポジトリをインポートする

ソース コードが Git リポジトリで追跡されている場合は、コマンド ラインで Git を使ってリポジトリをインポートできます。

始める前に、以下をご確認ください:

  • お使いの GitHub Enterprise Serverユーザ名
  • 外部リポジトリのクローン URL (https://external-host.com/user/repo.gitgit://external-host.com/user/repo.git など) (おそらく、external-host.com ドメイン名の前に user@ が付いています)

Note

デモでは、以下の情報を使用します:

  • extuser という名前の外部アカウント
  • https://external-host.com という名前の外部 Git ホスト
  • ghuser という名前の GitHub Enterprise Server 個人アカウント
  • お使いの GitHub Enterprise Server インスタンス の repo.git という名前のリポジトリ。
  1. GitHub Enterprise Server に新しいリポジトリを作成します。 この新しいリポジトリに、外部 Git リポジトリをインポートします。

  2. コマンドラインで、外部クローン URL を使用して、外部リポジトリの "ベア" クローンを作成します。 これはデータの完全なコピーですが、ファイル編集のためのワーキングディレクトリはコピーされず、古いデータすべてのクリーンな新しいエクスポートが作成されます。

    $ git clone --bare https://external-host.com/EXTUSER/REPO.git
    # Makes a bare clone of the external repository in a local directory
    
  3. "mirror" オプションを使用して、ローカルにクローンされたリポジトリを GitHub Enterprise Server にプッシュします。インポートされたリポジトリには、ブランチやタグなどすべての参照がコピーされます。

    $ cd REPO.git
    $ git push --mirror https://HOSTNAME/USER/REPO.git
    # Pushes the mirror to the new repository on お使いの GitHub Enterprise Server インスタンス
    
  4. 一時ローカル リポジトリを削除します。

    cd ..
    rm -rf REPO.git
    

インポートするリポジトリに大きなファイルが含まれている場合は、警告またはエラーが発生する可能性があります。 大きなファイルとその管理方法について詳しくは、「GitHub での大きいファイルについて」をご覧ください。