git から git への移行メモ

Git
この記事は約2分で読めます。
記事内に広告が含まれています。

今回はGitリポジトリを別システムのGitリポジトリに移行した時の内容を備忘録的に書きます。

移行先はGitlabやGithubでも同じように出来ると思います。

手順

単純にcloneしてpushだとmasterブランチしか移行出来ません。
※移行したいBranchやTagを全部pushすればいいのですが・・・面倒です。

mirrorオプションを利用すると一発で移行出来ます。

–mirror

Set up a mirror of the source repository. This implies --bare. Compared to --bare--mirror not only maps local branches of the source to local branches of the target, it maps all refs (including remote-tracking branches, notes etc.) and sets up a refspec configuration such that all these refs are overwritten by a git remote update in the target repository.

https://git-scm.com/docs/git-clone/ja
# 移行元clone
git clone --mirror 移行"元"GitリポジトリURL

# 確認
git remote -v

# 移行先URL設定
git remote set-url --push origin 移行"先"GitリポジトリURL

# 確認
git remote -v

# 移行先push
git push --mirror

念のため「git remote -v」でURLに誤りが無いことを確認しています。検証で確信がとれれば特に実行しなくてもOKです。

git → git移行は上記コマンドのように簡単に出来ます。ただ、実作業では念のため下記を実施してエビデンスを取ったほうがいいとは思います。

  • ブランチやタグを比較
    git branch -aやgit ls-remote –tags
  • ファイル内容を比較
    winMerge等

まとめ

本記事ではgitからgitへの移行をご紹介しました。

git cloneやpush時のmirrorオプションがポイントです。
実施時は事前検証を行って手順を確実にしましょう。

最後までご覧いただき、ありがとうございました。

コメント

Top
タイトルとURLをコピーしました