merge: set the checkout strategy to SAFE_CREATE

The expectation is set with Repository.checkout()'s default strategy and
the documentation text that we will write the merged content of the
files to the workdir. We however fail to override the default checkout
strategy when calling git_merge() which results in a DRY_RUN strategy
and no files being changed.

Set the checkout strategy to SAFE_CREATE to match expectations and text.
Merge remote-tracking branch 'carlos/merge-checkout-safe'