Source: cirosantilli/git-tips/git-mergetool-with-meld-or-kdiff3

= `git mergetool` with `meld` or `kdiff3`

These are good free newbie GUI options:
``
sudo apt install meld
git mergetool --tool meld

sudo apt install kdiff3
git mergetool --tool kdiff3
``

\Image[https://raw.githubusercontent.com/cirosantilli/media/master/meld.png]
{height=500}

\Image[https://raw.githubusercontent.com/cirosantilli/media/master/kdiff3.png]
{height=500}

Let's make a more interesting conflict:

git-tips-2.sh
``
#!/usr/bin/env bash

set -eux

add() (
  rm -f f
  for i in `seq 10`; do
    printf "before $i\n\n" >> f
  done
  printf "conflict 1 $1\n\n" >> f
  for i in `seq 10`; do
    printf "middle $i\n\n" >> f
  done
  printf "conflict 2 $2\n\n" >> f
  for i in `seq 10`; do
    printf "after $i\n\n" >> f
  done
  git add f
)

rm -rf git-tips-2
mkdir git-tips-2
cd git-tips-2
git init

for i in 1 2 3; do
  add $i $i
  git commit -m $i
done

add 3 4
git commit -m 4

add 5 4
git commit -m 5

git checkout HEAD~2
git checkout -b my-feature

add 3 6
git commit -m 6

add 7 6
git commit -m 7
``