web関連

【git】リポジトリをクローンしてきた後にブランチをpullする方法

2021/04/15

リポジトリをクローンしたときにpullされるブランチがmasterブランチだけらしく、作成したdevelopブランチをpullしたかったときの備忘録

とりあえずブランチをpullしたい時

1行目のコードだけでローカル環境をリモートリポジトリに合わせることができる

for remote in `git branch -r`; do git branch --track ${remote#origin/} $remote; done
git branch -r | grep -v "\->" | grep -v main | while read remote; do git branch --track "${remote#origin/}" "$remote"; done
どちらでも、リポジトリのブランチをpullすることができる(確認済み)
やっていることはわからない

上記の2つの参考コードの元記事にはgit fetch --allgit pull --allがセットになっているが、これらはローカル環境を最新にする記述なのでクローンしてきた段階ではローカルは最新だから必要はなさそう

特定のブランチのみpullしたいとき

特定のリモートリポジトリのブランチをpullしたいときは以下のように書く

git checkout -b <ローカルブランチ名> origin/<リモートブランチ名>

やっている内容としては、ローカルにブランチを作成→リモートブランチをその作成したブランチにpull→作成したブランチに移動するという処理をしている

これで特定のブランチのみpullすることができる

「origin/<リモートブランチ名>」の部分はリモートリポジトリのブランチ一覧を取得するgit branch -rを打つと確認できる

以下のように表示される

git branch -r
  origin/HEAD -> origin/master
  origin/develop
  origin/master

おまけ:ローカルでリモートリポジトリと同じブランチを作成してpullする方法

ローカルで「develop」ブランチを作成し、ブランチを切り替え

git checkout -b develop

リモートリポジトリのブランチ「develop」をpullする

git pull origin develop:develop

省略して書くとgit pull origin develop
pullする際に削除されたファイルとか作られたファイルが一覧で表示される
ローカルとリモートで同じブランチ名だと省略できたりするみたい

ブランチを既に用意しているパターンを想定しての備忘録

Leave a Comment

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。