web関連
【git】リポジトリをクローンしてきた後にdevelopブランチをpullする方法
リモートリポジトリをクローンした時、pull
されるブランチがmaster
ブランチだけらしく、他のdevelop
ブランチもpull
したかったときの備忘録
前提と目的
前提として、リモートリポジトリをclone
済み
この記事の目的は、master
ブランチ以外のブランチ(develop
ブランチなど)もpull
すること。
とりあえず全てのブランチをpullする方法
以下の2つのコードで全てのブランチをpull
することが可能。
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
することができた。
特定のブランチのみpullしたい時
特定のリモートリポジトリのブランチをpullしたいときは以下のように書く。
git checkout -b <ローカルブランチ名> origin/<リモートブランチ名>
おまけ:ローカル環境にリモートリポジトリと同じブランチを作ってpull
特定のブランチをpull
するもう一つの方法としては、pull
したいリモートリポジトリのブランチ名と同じ名前のブランチをローカルリポジトリで作成してpullする方法。
# masterのみclone
git clone https://...git
# pullしたいリモートリポジトリのブランチと同名のブランチをローカル環境に作成
git checkout -b develop
# pullする
git pull origin develop:develop
git pull origin develop:develop
を省略して書くとgit pull origin develop
と書ける。
※pullする際に削除されたファイルとか作られたファイルが一覧で表示される(メモ)
ローカルとリモートで同じブランチ名だと省略できたりするよう。
git fetch --all
git pull --all
がセットになっているが、これらはローカル環境を最新にする記述なのでクローンしてきた段階ではローカルは最新だから必要はなさそう