今回はリモートbranchからローカルに持ってきて作業したい場合、どうやるのか。
間違えてgit pullしてしまい、pushして大変なことになった経験がある方多いんじゃないのかと思い!
正しい方法をブログします。
前回のブログは以下より(gitエイリアス化してます)
■ダメな方法
・現在のbranch
adachin-developをローカルに持っていきたい。
1 2 3 4 5 |
Adachin-Pro-15 > g br -a * master remotes/origin/HEAD > origin/master remotes/origin/adachin-develop remotes/origin/master |
・こんなことをすると
1 |
$ git pull origin adachin-develop:adachin-develop |
汗・・・
・なんでダメなのか
上記のコマンドを打つと
masterにマージされましたとか出てくる。(自分は気づいてヨカッタ)
つまり、pullしちゃうと
今いるローカルのbranchにマージされてしまいます。
実際気づかずにpushして
「あああああああ!!!」と悲鳴をあげることも。。
■大丈夫だけどダサい方法
・adachin-developのbranchをローカルに
1 2 |
Adachin-Pro-15 > g br adachin-develop origin/adachin-develop Branch adachin-develop set up to track remote branch adachin-develop from origin. |
・branchの確認
1 2 3 4 5 6 |
Adachin-Pro-15 > g br -a adachin-develop * master remotes/origin/HEAD > origin/master remotes/origin/adachin-develop remotes/origin/master |
・adachin-develop branchに切り替え
1 2 3 |
Adachin-Pro-15 > g ch adachin-develop Switched to branch 'adachin-develop' Your branch is up-to-date with 'origin/adachin-develop'. |
・確認
1 2 3 4 5 6 |
Adachin-Pro-15 > g br -a * adachin-develop master remotes/origin/HEAD > origin/master remotes/origin/adachin-develop remotes/origin/master |
■もっと簡単な方法
1 |
$ g ch -b adachin-develop origin/adachin-develop |
これだとbranch作って、切り替えもしてくれる。
■まとめ
なんというかローカルに持ってくる時も新しくbranch切る感じ。
branchは個々別のものだと把握していればOK。
ヤバくなったらすぐに相談して前に戻そう!
参考
http://qiita.com/yoshiokaCB/items/eb68db0a81009b85c8a4
http://blog.inouetakuya.info/entry/20120826/1345979787
0件のコメント