Skip to main content

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

リポジトリを複製する

リポジトリのミラーをフォークすることなく維持するには、特別なクローン コマンドを実行して、新しいリポジトリにミラープッシュします。

元のリポジトリをリポジトリの新しいコピー ("ミラー") にプッシュするには、your GitHub Enterprise Server instance で新しいリポジトリを作成する必要があります。 これらの例では、exampleuser/new-repository または exampleuser/mirrored はミラーです。

リポジトリをミラーする

  1. [ターミナル][ターミナル][Git Bash] を開きます。
  2. リポジトリのベアクローンを作成します。
    $ git clone --bare https://ホスト名/EXAMPLE-USER/OLD-REPOSITORY.git
  3. 新しいリポジトリをミラープッシュします。
    $ cd OLD-REPOSITORY.git
    $ git push --mirror https://ホスト名/EXAMPLE-USER/NEW-REPOSITORY.git
  4. 先ほど作成した一時ローカルリポジトリを削除します。
    $ cd ..
    $ rm -rf OLD-REPOSITORY.git

Git Large File Storage オブジェクトを含むリポジトリをミラーする

  1. [ターミナル][ターミナル][Git Bash] を開きます。
  2. リポジトリのベアクローンを作成します。 ユーザ名の例をリポジトリを所有する人や Organization の名前に置き換え、リポジトリ名の例を複製したいリポジトリの名前に置き換えてく� さい。
    $ git clone --bare https://ホスト名/EXAMPLE-USER/OLD-REPOSITORY.git
  3. クローンしたリポジトリに移動します。
    $ cd OLD-REPOSITORY.git
  4. リポジトリの Git Large File Storage オブジェクトをプルします。
    $ git lfs fetch --all
  5. 新しいリポジトリをミラープッシュします。
    $ git push --mirror https://ホスト名/EXAMPLE-USER/NEW-REPOSITORY.git
  6. リポジトリの Git Large File Storage オブジェクトをミラーにプッシュします。
    $ git lfs push --all https://github.com/EXAMPLE-USER/NEW-REPOSITORY.git
  7. 先ほど作成した一時ローカルリポジトリを削除します。
    $ cd ..
    $ rm -rf OLD-REPOSITORY.git

別の� �所にあるリポジトリをミラーする

元のリポジトリから更新を取得するなど、別の� �所にあるリポジトリをミラーする� �合は、ミラーをクローンして定期的に変更をプッシュできます。

  1. [ターミナル][ターミナル][Git Bash] を開きます。

  2. リポジトリのミラーしたベアクローンを作成します。

    $ git clone --mirror https://ホスト名/EXAMPLE-USER/REPOSITORY-TO-MIRROR.git
  3. プッシュの� �所をミラーに設定します。

    $ cd REPOSITORY-TO-MIRROR
      $ git remote set-url --push origin https://ホスト名/EXAMPLE-USER/MIRRORED

    ベアクローンと同様に、ミラーしたクローンにはすべてのリモートブランチとタグが含まれますが、フェッチするたびにすべてのローカルリファレンスが上書きされるため、常に元のリポジトリと同じになります。 プッシュする URL を設定することで、ミラーへのプッシュが簡� 化されます。

  4. ミラーを更新するには、更新をフェッチしてプッシュします。

    $ git fetch -p origin
    $ git push --mirror