class Git::CommandLineError
Raised when a git command fails or exits because of an uncaught signal
The git command executed, status, stdout, and stderr are available from this object.
The Gem will raise a more specific error for each type of failure:
-
{Git::FailedError}: when the git command exits with a non-zero status
-
{Git::SignaledError}: when the git command exits because of an uncaught signal
-
{Git::TimeoutError}: when the git command times out
@api public
Public Class Methods
new(result)
click to toggle source
Create a CommandLineError
object
@example
`exit 1` # set $? appropriately for this example result = Git::CommandLineResult.new(%w[git status], $?, 'stdout', 'stderr') error = Git::CommandLineError.new(result) error.to_s #=> '["git", "status"], status: pid 89784 exit 1, stderr: "stderr"'
@param result [Git::CommandLineResult] the result of the git command including
the git command, status, stdout, and stderr
Calls superclass method
# File lib/git/errors.rb, line 97 def initialize(result) @result = result super(error_message) end
Public Instance Methods
error_message(= <<~MESSAGE.chomp)
click to toggle source
The human readable representation of this error
@example
error.error_message #=> '["git", "status"], status: pid 89784 exit 1, stderr: "stderr"'
@return [String]
# File lib/git/errors.rb, line 109 def error_message = <<~MESSAGE.chomp #{result.git_cmd}, status: #{result.status}, stderr: #{result.stderr.inspect} MESSAGE # @attribute [r] result # # The result of the git command including the git command and its status and output # # @example # error.result #=> #<Git::CommandLineResult:0x00000001046bd488 ...> # # @return [Git::CommandLineResult] # attr_reader :result end