async rsyncCopy(src, dest, { rsync, ignores, ...cmdOptions } = {}) {
    this.log('Copy "%s" to "%s" via rsync', src, dest)

    const sshCommand = formatSshCommand({
      port: this.remote.port,
      key: this.options.key,
      strict: this.options.strict,
      extraSshOptions: this.remote.extraSshOptions,
      tty: this.options.tty,
    })

    const cmd = formatRsyncCommand({
      asUser: this.options.asUser,
      src,
      dest,
      remoteShell: sshCommand,
      additionalArgs: typeof rsync === 'string' ? [rsync] : rsync,
      excludes: ignores,
    })

    return this.runLocally(cmd, cmdOptions)
  }
Abstract method to copy using rsync.

@private
@param {string} src
@param {string} dest
@param {object} options
@param {string[]|string} rsync Additional arguments
@param {string[]} ignores Files to ignore
@param {...object} cmdOptions Command options
@returns {ExecResult}
@throws {ExecError}