Bitbucket + Sourcetree 既存のリポジトリを別に用意したい

既存のリポジトリがあって、大人の事情で別のリポジトリに移行(?)したい

作成日:2023-03-30, 更新日:2023-03-30

流れ

専門用語が分かりづらいので、自分の分かる単語に置き換えてメモ → ところどころ単語は脳内変換が必要

「git shallow clone」で検索したら似たような情報はいっぱいあるし、困ったコトに対する回答もいっぱいある…けど、私の場合、条件に当てはまらない+知識不足であまり役に立たなかった…

  1. 新しいリモートのリポジトリを用意
  2. リモートにある既存のリポジトリからcloneでローカル環境に落としてくる
  3. ローカル環境に落としたリポジトリを初期化
  4. 新しいリモートのリポジトリにアップする

下記の通りじゃなくても多分、問題ないと思う

環境

  • リモートリポジトリはBitbucketを使用
  • ローカル環境はSourcetreeを使用
  • gitのコマンドはほとんど知らない。必要に応じて調べたりする程度

新しいリモートのリポジトリを用意

Bitbucketでリポジトリを作成

  • 「READMEを含めますか?」は「No」
  • 「Include .gitignore?」は「No」

リモートにある既存のリポジトリからcloneでローカル環境に落としてくる

Sourcetreeから「Clone」でローカルに落とす

▼詳細オプション

  • 「クローンの深さ」は「1」
  • 「チェックアウトするブランチ」は落としたいブランチ(※多数の人は「master」になると思う)

ブランチ名の変更

落としたあと、ブランチ名が「master」じゃないなら「master」にリネームしておく

ローカル環境に落としたリポジトリを初期化

ローカル環境から「.git」をマルっと削除

新しいリモートのリポジトリにアップする

▼関係のあるトコ

step1

▼Sourcetreeからターミナル起動してコマンド実行

$ git init
$ git add .
$ git commit -m '移行'

※「'移行'」ってとこは好きなコメントにする

step2

Sourcetreeにもどって「設定」から「リポジトリ設定」を設定
→新しいリモートリポジトリのPATHにする

step3

▼Sourcetreeのターミナルにもどってコマンド実行

$ git push origin master

※Sourcetreeからプッシュでいけると思う…

その後

  • Bitbucketで確認
  • Sourcetreeから「Git Flow」を実行。「ブランチ: develop」が作られる
  • Sourcetreeから「ブランチ: master、develop」を「プッシュ」しておく