Had the same problem ("Scheduling another build to catch up with ..." build loop) using the SCM change trigger and triggering the job manually or by daily cron.
It was NOT caused by wildcards in "Branch specifier" or multiple matching branches.
Was able to solve it by adding these two "Additional Behaviours" to the Git configuration (in this order):