たくさんの自由帳

Gitでコンフリクトしたから直す(Android Studio)

投稿日 : | 0 日前

文字数(だいたい) : 1506

スーツ高いね

本題

  • しれっと仕様変更が入る
  • アプリが動かなくなる
  • いったんリリース用のブランチに切り替える
    • 開発中はまだリリースできないのでリリース時までいったんタイムスリップ
  • 修正する
  • リリースする
  • 開発用ブランチにリリース用ブランチの内容を反映させる
    • (masterブランチに切り替えて) git merge release
  • 競合(コンフリクト)を起こす
  • ↑今ここ

Android Studio で直す

git merge release(releaseはブランチ名)を実行してコンフリクトを起こすとこうなります

Auto-merging app/src/main/res/values/strings.xml
CONFLICT (content): Merge conflict in app/src/main/res/values/strings.xml
Auto-merging app/src/main/res/values-ja/strings.xml
CONFLICT (content): Merge conflict in app/src/main/res/values-ja/strings.xml

反映しようと思ったら同じところが編集されていて動けなくなってるGitのメッセージ

このままでは実行できないので直しに行きます。

ちなみにAndroid Studioでは赤く表示されます

Imgur

該当のファイルを開いて(もしかしたら何でもいいかもしれない)、右クリック→Git→Resolve Conflicts...を選びます。

Imgur

そしたらこんな感じになるので、どっちを取るか、もしくはマージするか選びます。
今回は両方取るマージを押しますが、プログラムによっては}とか終了タグが足りなくなったりするかもしれないので気をつけて。

Imgur

するとこんな感じになる。真ん中がマージ結果。左が今のブランチ、右が取り込んだブランチになってます。

Imgur

まずは今のブランチの内容を結果へ取り込みます。>>ってところを押せば取り込めます。

Imgur

これで結果へ取り込めました。

Imgur

次は、取り込んだブランチ先の変更も取り込みます。
右側のところにある└└みたいなところを押します。

Imgur

これで両方を取り込む事ができました。
Applyを押して閉じましょう。

Imgur

他のファイルも同じ手順で直して行きましょう。(直せれば)