#はじめに
Githubを用いたチーム開発では、masterブランチから開発用ブランチを切って各々作業をしていくが
作業中に他のチームメンバーがmasterにmergeした内容を今すぐ自分のブランチに反映したい時がある
そこで今回はGithub Desktopを用いたそのやり方を自分なりにまとめたので以下に手順を書いておく
#シチュエーション例
AさんとBさんはsampleというアプリをチームを組んで開発中
Aさん・・・masterからtest1ブランチを切って作業中
Bさん・・・masterからtest2ブランチを切って作業中
Aさんが上の画像の内容(merge test)をコミットしプルリクを終えてmasterブランチにmergeし終えた
一方でBさんはtest2ブランチで上の画像の通り作業中であるが
Aさんがmasterブランチにmergeした内容を自分のブランチにも反映させようと思った
test2ブランチからmasterブランチに移動しようとすると上のような画面が出るが
"Leave my changes on 〇〇(現在いるブランチ名)"を選択して"Switch Branch"をクリック
※ブランチを移動する時にコミットしてから移動することも出来るが別にコミットする必要はない
理由は上記の"Leave my changes on ~"をすると
stashに今までのChangesの記録が一時的に保存されるからである
stash=避難所みたいなイメージで考えるとわかりやすいかも
masterブランチに移動したら"Pull origin"をして最新の状態にする
Historyを見てAさんがmergeした内容が反映されているか確認する
test2ブランチに戻りHistoryを確認するとmasterブランチの更新内容が反映されていない
そこで画像のようにCurrent Branchの欄から1番下にある
"Choose a branch to into 〇〇(現在いるブランチ名)"をクリック
すると上のような画面が出てくるのでmasterを選択し
"Merge master into 〇〇(現在いるブランチ名)"をクリック
そしたらPull originが出来るようになるので
した後にHistoryを見ると画像のようにmasterブランチの更新内容が反映されている
さて、masterブランチの反映も完了したので元の作業に戻ろうとしたら
Changesの中身が消えてしまっている
そこで"Stashed Changes"をクリック
するとstashに保存されているChangesの内容が見れる
Restoreをクリックし中身を呼び戻す
無事Changesの中身が戻って来ました
これでまた作業に戻れます!
※更新内容によってはコンフリクトが発生したりするので
その時は自分で何とかして解決してください(投げやり)
#おわりに
以上が自分で調べたやり方です
どこか間違っているところや他にいい方法があったら
ぜひご指摘してください