Вы можете попробовать что-то вроде этого. Идея состоит в том, чтобы перебрать все коммиты слияния и посмотреть, достижим ли коммит "c" из одного из них:
$ git log --merges --format='%h' master | while read mergecommit; do
if git log --format='%h' $mergecommit|grep -q $c; then
echo $mergecommit;
break
fi
done