Если P4merge работает для вас, то
git config --global diff.guitool P4merge
Лично я использую vim с fugitive, но прелесть git в том, что вам не нужен специальный инструмент.
Семейство gitn довольно хорошее (я использую gitg для некоторой сложной визуализации веток, git log --graph это хорошо, но объединение осьминога с 6 путями - страшная вещь в ascii)
GITX на OSX также довольно аккуратно.