17
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

東京理科大学Advent Calendar 2016

Day 19

conflictしたときにGitHub Desktopをつかって解決!

Last updated at Posted at 2016-12-19

こちらは東京理科大学 Advent Calendar 2016の19日目の記事です。

今日はGitHub Desktopをつかった、比較的簡単(だと思われる)conflictの解消の仕方をかいていきます。
ターミナルとGitHub Desktopを混ぜて使っているのでこの通りにやると画面の切り替えが面倒かもしれません。
ターミナルに慣れたいけどgitはまだこわい初心者の人にはおすすめかな?
ちなみに、開発中にリモートのmasterがどんどん更新されていったときにその変更分を自分が作業しているbranchに取り込みたいと思った時は、手順の2と3を行えば取り込めます。

#GitHub Desktopとは
簡単にgitの基本操作を行えるツールです。
コードを変更した時に差分が簡単に見られたり、コードは元にもどさないまま1個前のcommitを簡単に取り消せたりするので便利です。
基本的な使い方はGitHub Desktopの使い方 - Qiitaが参考になります。

conflictの解消方法

1 gitHubでconflictしてるよ!と言われる

pushしてpull requestをだすとconflictしてるよといわれます。
conflict

2 localのmasterを更新

自分のbranchでcommitしていない変更があればしておきます。
そしてmaster branchに移動をします。
以下の$マークはターミナルでコマンドを打ったことを明示するためにつけているだけなので実際には打ちません。

$ git checkout master

そしてリモートから最新のmasterの情報を自分のmaster branchにもってきます。

$ git pull origin master

これでlocalのmaster branchが最新の状態になりました。

3 master branchの変更分をとりこもうとする

conflictしているbranchに移動をします。
そしてGitHub Desktopをみると左上のUpdate from masterボタンが押せるようになっているので押すと下のような画面になります。
conflictしていなければ、ボタンを押すことでmasterの変更分が取り込まれるcommitが問題なく生成されます。
GitHub Desktop1

4 conflict内容を確認し、変更

先ほどの画面が出たあとEditorを開くとconflictした部分が以下のように書き変わっています。

.container {
<<<<<<< HEAD
  width: 30%;
||||||| merged common ancestors
  width: 60%;
=======
  width: 90%;
>>>>>>> master
  margin: 0 auto;
}

これはどういうことかというと、

.container {

/// conflictしたbranchの変更分 ///
<<<<<<< HEAD
  width: 30%;

/// おおもとのコード ///
||||||| merged common ancestors
  width: 60%;

/// リモートの変更分 ///
=======
  width: 90%;
>>>>>>> master

  margin: 0 auto;
}

ということです。

これを見比べて、残しておくコードを決め、変更してcommitします。
今回は以下のようにコードを残しておくことにしました。

.container {
  width: 30%;
  margin: 0 auto;
}

5 commitする

最後にGitHub Desktopに戻ってcommitをします。

GitHub Desktop2
すると、masterの変更分が取り込まれてconflictが解消できます!

まとめ

これはconflict解消法の1例です。
慣れてきたらさらに早く解消できる方法を探してみてください。

東京理科大学 Advent Calendar 2016の19日目の記事でした。

17
14
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
17
14

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?