マージ衝突とは
…gitにおいて同じファイルの同じ場所に、複数のブランチから変更が加えられていて、どっちの変更を採用するべきか判断に迷い、立ち止まっている状態。
発生したマージ衝突では、
ローカルディレクトリの内容でリモートディレクトリを上書きすることとした。
このコードの構造が分からずじまいのため次のとおり整理。
git merge --abort
→マージしている状態をやめる
2>
→エラー出力を表示する
/dev/null
→何も表示する捨てる
||
→前のコマンドが失敗したら次のコマンドを実施する
true
→いわずもがな正しい。
したがって、
「マージしている状態をやめる。やめるとマージされていないとエラーが出るけどそれが出ても正常と認識する。」
-u
→直後のoriginと直後のmainのブランチが連携していると刷り込ませる
(originがリモート側、mainがローカルのほうね)
--force-with-lease
→この後に続くmainの内容で強制的に直前のoriginを上書きする。
補足
ブランチとディレクトリ
→ブランチが変更の履歴が分かる作業ライン
ディレクトリがあくまで物理的なファイルの収納場所・構造

