Don't fail if the target is a direct ancestor of the source.

If the old master is cleanly shut down before promoting the standby, and
you later use pg_rewind to prepare for a fail-back, it throws an error
like:

0/4000090 on timeline 1 could not previous WAL record at 0/4000090: record with zero length at 0/4000090

It tries to walk backwards from the first WAL record in the divergent history,
but if there are no WAL records in the target, it fails.

To fix, detect the situation by looking at where the target's checkpoint
record ends, and exit successfully with return code 0 if there is nothing to
do.