extensions/git/src/commands.ts/CheckoutItem/run
class CheckoutItem:	async run(opts?: { detached?: boolean }): Promise<void> {
		if (!this.ref.name) {
			return;
		}

		const config = workspace.getConfiguration('git', Uri.file(this.repository.root));
		const pullBeforeCheckout = config.get<boolean>('pullBeforeCheckout', false) === true;

		if (pullBeforeCheckout) {
			try {
				await this.repository.fastForwardBranch(this.ref.name!);
			}
			catch (err) {
				// noop
			}
		}

		await this.repository.checkout(this.ref.name, opts);
	}