[git]リモートブランチをローカルにロードする


クローン同僚のプロジェクト使用では,원격 저장소에 저장되어 있는 branch들がローカルに持ち込まれない場合がある.
pull、fetchなどのコマンドは失敗しました.リモート・リポジトリに格納されているブランチに関する情報をロードする方法について説明します.

git remote update:すべてのリモートストレージブランチ情報を取得するには

$ git remote update
次のコマンドを使用して、ローカル・リポジトリ内のすべてのブランチのリモート・ストレージ情報を更新します.
$ git fetch
git fetchの場合、現在チェックアウトされているブランチのリモートストレージ情報のみが更新されます.
すなわちgit remote updateは、すべてのブランチに対してfetchを行うことに相当する.
実際、git remote updateコマンドを入力すると、Originを取得した状態が表示されます.

git fetch-p:削除されたリモートストレージブランチ情報を取得するには


なぜかGit remote updateコマンドでは、リモートストレージから削除するかどうかを判断できません.
それを確認するために、
$ git fetch -p
命令を入力すればいいそうです.pは李子の略語です.

git branch:localとremoteにはどのような分岐がありますか?

$ git branch -r # remote에 저장되어 있는 branch 목록을 보여준다
$ git branch -l # local에 저장되어 있는 branch 목록을 보여준다
$ git branch -a # all, 즉 remote와 local 모두에 저장되어 있는 branch 목록을 보여준다
これまで、-lオプションはlistの略だと思っていたので、branchのlistを見せましたが、localの略です.

実際の応用では,−rオプションを適用すると分岐がorigin/*,−aと表示され,分岐がremotes/origin/*と表示される.

git checkout-t:リモートブランチをローカルにインポートする場合は、次の操作を行います。

$ git checkout -t origin/{branch_name}
インポートしたいremote branchはgit checkout -tコマンドで名前でインポートできます.
-tオプションはtrackの略で、リモート・リポジトリ内のブランチを追跡するための新しいブランチの作成と見なすことができます.
$ git checkout -b {new_branch_name} [origin/{branch_name}]
リモートブランチの名前を変換してインポートする場合は、-bオプションを使用します.
逆に、リモート・リポジトリのブランチを後に記入する必要があります.この部分がoptionalで、書かないと、現在のブランチからnew_branch_nameという新しいブランチが派生します.

参考資料


https://cjh5414.github.io/get-git-remote-branch/
https://blog.naver.com/vefe/221931451289
https://stackoverflow.com/questions/17128466/why-do-i-see-a-deleted-remote-branch