git-synchronizer: only force-push when necessary

This helps with SourceForge: SourceForge has this ridiculously
restrictive configuration that disallows non-fast-forward pushes,
even to branches other than 'master'. This cannot even be changed
by project administrators.

As a work-around, we delete branches just before force-pushing them
when we detect that the force-push targets SourceForge.

However, we marked too many pushes as forced pushes, including
fast-forwarding ones to the master branch. And ran into another
restriction (one that actually does make sense): you cannot delete
the current branch.

So let's be extra careful to determine whether it is *actually*
a forced push, or whether it is really a fast-forward.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>