Info
#

2025/06/23 (Mon) 09:03:14 GMT+0000 (UTC)
Type: PC | System: Unknown | Browser: Unknown ... More

Menu
.
+
#
  • @ /note/git/post-CopyRepository
Content
.
+
#

Post: Nekoformi
Date: 2024/04/15

Copy Repository

Gitではフォーク等の機能を用いることで簡単にリポジトリーを複製できますが、そうではなく完全に新たなリポジトリーとして従来のリポジトリーを引き継ぐ(コミット履歴が含まれるリポジトリーを複製する)方法を紹介します。

  1. GitHub等で新しい(コピー先の)リポジトリーを作成します。
  2. 適当なディレクトリーにコピー元のリポジトリーのベアリポジトリー(Gitの更新情報だけを持ち、作業ディレクトリーを持たないリポジトリー)をクローン:clone --bareします。リポジトリー名の後に.gitを付け忘れないように気を付けましょう。
Bash
+
#
1:
2:
// 例:GitHubの場合 $ git clone --bare https://github.com/ユーザー名/コピー元のリポジトリー名.git
  1. クローンしたディレクトリーに移動:cdして、コピー先にコピー元のリポジトリーをミラープッシュ:push --mirrorします。
Bash
+
#
1:
2:
3:
// 例:GitHubの場合 $ cd ./コピー元のリポジトリー名.git $ git push --mirror https://github.com/ユーザー名/コピー先のリポジトリー名.git
  1. 不要であればクローンした(ローカル上の)リポジトリーを削除:rmします。
Bash
+
#
1:
2:
$ cd .. $ rm -rf ./コピー元のリポジトリー名.git
  1. 無事にコピー先のリポジトリーにコピー元のリポジトリーが複製されました。