Про giggle не скажу, не пользовался, а на первую часть вопроса отвечу.
Активно использую SmartGit. В нём есть два алгоритма подсветки веток.
Первый похож на описанный Flanker72 (по точкам ветвления), а второй подсвечивает коммиты, которые можно смержить, а остальные затеняет.