class Git::CommandLine::Base

Abstract base class for git command-line execution strategies

Concrete subclasses must implement {#run} to execute a git command and return a {Git::CommandLine::Result}. Two implementations are provided:

@example Instantiate a concrete subclass

env = { 'GIT_DIR' => '/path/to/git/dir' }
binary_path = '/usr/bin/git'
global_opts = %w[--git-dir /path/to/git/dir]
logger = Logger.new($stdout)
cli = Git::CommandLine::Capturing.new(env, binary_path, global_opts, logger)
cli.run('version') #=> #<Git::CommandLine::Result ...>

@abstract Subclass and implement {#run}

@api private