LoginSignup
2
1

More than 1 year has passed since last update.

別々のリポジトリで管理されていたGitを統合する

Posted at

こんにちは。

諸般の事情で別々に管理されていたGitを統合する必要がありました。その手順を記録しておきます。

前提

下記のように2つのリポジトリがあり、BからAに向けて統合します。

  • リポジトリ A repo_a
  • リポジトリ B repo_b

それぞれ main ブランチがあるとします。

下記のような手順で進めます。

  1. リポジトリAのリモートリポジトリとしてBを追加
  2. リポジトリAに統合用のブランチを作成し、Bからプル
  3. リポジトリAで統合用ブランチからマージ

手順

リポジトリAのリモートリポジトリとしてBを追加

$ git remote add repo_b git@github.com:yousan/repo_will_be_migrated_b.git

リポジトリAに統合用のブランチを作成し、B/mainからプル

$ git checkout -b migrate_branch
$ git pull --no-rebase --allow-unrelated-histories repo_b main

リポジトリAで統合用ブランチからマージ(実務ではPRにすると良いかも)

$ git checkout main && git merge migrate_branch

image.png

リポジトリをやり直す

動作試験の際に過去の履歴を抜きにして作り直したいことがありました。リポジトリを作り直すのも一つですが、main ブランチを別名に置き換え、新たにイチからブランチを作り直してテストを行いました。

$ git branch -m main main_old && git checkout --orphan main

image.png

参考

2
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
1