QtSynchronizeRepo: Add FORCE_CHECKOUT option


A repository that was already at the required revision was skipped, and
a plain git checkout keeps local changes. This made it impossible to
check out repositories that were cloned with --no-checkout.

Add a FORCE_CHECKOUT option that passes --force to git checkout and does
not skip dependencies that are already at the required revision. Each
dependency is forced only once, so the revisit loop still terminates.

Fixes: QTBUG-151391
Change-Id: Ic8ce97cc901905de51a15d1628e14d5870554c1e
Reviewed-by: Alexandru Croitor <alexandru.croitor@qt.io>
commitcfee770f25701b7fe0512da7543df46f053eb297
parent239e26316e48b1f3fcd1fa41e3fd7099f119bb44
authorJoerg Bornemann <joerg.bornemann@qt.io>
committerJoerg Bornemann <joerg.bornemann@qt.io>
commit timeMon, 26 Oct 2026 19:59:00 +0000