import { envForAuthentication } from './authentication'
import { IGitAccount } from '../../models/git-account'

/**
 * Create a set of environment variables to use when invoking a Git
 * subcommand that needs to communicate with a remote (i.e. fetch, clone,
 * push, pull, ls-remote, etc etc).
 *
 * The environment variables deal with setting up sane defaults, configuring
 * authentication, and resolving proxy urls if necessary.
 *
 * @param account   The authentication information (if available) to provide
 *                  to Git for use when connectingt to the remote
 * @param remoteUrl The primary remote URL for this operation. Note that Git
 *                  might connect to other remotes in order to fulfill the
 *                  operation. As an example, a clone of
 *                  https://github.com/desktop/desktop could containt a submodule
 *                  pointing to another host entirely. Used to resolve which
 *                  proxy (if any) should be used for the operation.
 */
export function envForRemoteOperation(account: IGitAccount, remoteUrl: string) {
  return {
    ...envForAuthentication(account),
  }
}

Create stub replacement for envForAuthentication
Create stub replacement for envForAuthentication
