remote: honour Deepen/Unshallow precedence in Fetch
Commit

Trail finding (low): when opts.Unshallow was true but the repo was not shallow, the --unshallow switch case fell through to the Deepen case, so --deepen fired even though Deepen is documented as ignored whenever Unshallow is set. (Harmless in practice — git treats --deepen on a non-shallow repo as a no-op — but it contradicts the contract.) Guard the Deepen case with !opts.Unshallow so the precedence holds regardless of shallow state.
Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com Entire-Checkpoint: 09f7d86d9966
Checkpoints
Checkpoint 1