リモートの作業ブランチをローカルにもってきたいのですがローカルにもってくるとコミットが途中までしか反映されていません。
リモートではコミットがa,b,c,d,eとあるとすると
git checkout -b local_branch_name origin/remote_branch_name
↑コマンドを実行した後ローカルでコミットを確認するとa,bまでしかない、というような事態に遭遇しています。
なぜでしょうか。
リモートリポジトリにコミットされているというのが勘違いなのでは?
origin/remote_branch_name
にc,d,eというコミットはない、ということでしょうか?
まず、あるかないかを確かめてください。
ありました
どうやって確かめました?
github上で該当ブランチのコードを開いてコミットログをみました
checkout -b は実行されるたびに新しいブランチを作りますが、何かエラーメッセージは出ませんか?
また該当ブランチで pull しても更新されませんか?
また、local_branch_name と remote_branch_name が違うのが気になります。違うブランチを見ていたりしませんか?
git checkout -b の時点で github に b までしかなかった、または github には e まであったとしても、git fetch してなかったので手元には b までしかなかったのでは。
とりあえず git checkout local_branch_name して git pull (または git fetch および git merge) すればいいのでは。
git pull origin REMOTE-BRANCH-NAME:LOCAL-BRANCH-NAME
で更新されました!ありがとうございます!
(どうして反映されなかったのでしょう...)
>git checkout -b の時点で github に b までしかなかった、または github には e まであったとしても、git fetch してなかったので手元には b までしかなかったのでは。
なるほど!
git checkout -b local_branch_name origin/remote_branch_name
これで勝手に最新のリモートの情報を持ってきてくれるものかと思っておりました
リモートブランチと、トラッキングブランチ (追跡ブランチ) の違いについて学んでください。
https://shinmedia20.com/git-remote-tracking
ああああ、なるほどおお!ありがとうございます!
あなたの回答
tips
プレビュー