docs: function checkout(options) {
      var branchOrTag = options.branch || options.tag;
  
      assert.ok(branchOrTag, 'branch or tag is mandatory');
  
      if ((options.create || options.oldCreate) && options.orphan) {
        throw new Error('create and orphan cannot be specified both together');
      }
  
      if (options.create && options.oldCreate) {
        throw new Error('create and oldCreate cannot be specified both together');
      }
  
      var args = [
        'checkout',
        options.create ? '-B' : options.oldCreate ? '-b' : null,
        options.orphan ? '--orphan' : null,
        branchOrTag,
        options.force ? '-f' : null
      ];
  
      return git(args)
          .then(silent);
    }