diff options
author | Sebastian Thiel <byronimo@gmail.com> | 2010-06-14 17:00:12 +0200 |
---|---|---|
committer | Sebastian Thiel <byronimo@gmail.com> | 2010-06-14 17:00:12 +0200 |
commit | 38b3cfb9b24a108e0720f7a3f8d6355f7e0bb1a9 (patch) | |
tree | 4bb0f82ff5579a7409c90d9c2ff754e57af143ec /lib/git/errors.py | |
parent | d9240918aa03e49feabe43af619019805ac76786 (diff) | |
parent | abaefc59a7f2986ab344a65ef2a3653ce7dd339f (diff) | |
download | gitpython-38b3cfb9b24a108e0720f7a3f8d6355f7e0bb1a9.tar.gz |
Merge branch 'index'
Diffstat (limited to 'lib/git/errors.py')
-rw-r--r-- | lib/git/errors.py | 28 |
1 files changed, 25 insertions, 3 deletions
diff --git a/lib/git/errors.py b/lib/git/errors.py index 6d926500..5fe99915 100644 --- a/lib/git/errors.py +++ b/lib/git/errors.py @@ -3,16 +3,16 @@ # # This module is part of GitPython and is released under # the BSD License: http://www.opensource.org/licenses/bsd-license.php -""" -Module containing all exceptions thrown througout the git package, -""" +""" Module containing all exceptions thrown througout the git package, """ class InvalidGitRepositoryError(Exception): """ Thrown if the given repository appears to have an invalid format. """ + class NoSuchPathError(OSError): """ Thrown if a path could not be access by the system. """ + class GitCommandError(Exception): """ Thrown if execution of the git command fails with non-zero status code. """ def __init__(self, command, status, stderr=None): @@ -24,3 +24,25 @@ class GitCommandError(Exception): return ("'%s' returned exit status %i: %s" % (' '.join(str(i) for i in self.command), self.status, self.stderr)) + +class CheckoutError( Exception ): + """Thrown if a file could not be checked out from the index as it contained + changes. + + The .failed_files attribute contains a list of relative paths that failed + to be checked out as they contained changes that did not exist in the index. + + The .failed_reasons attribute contains a string informing about the actual + cause of the issue. + + The .valid_files attribute contains a list of relative paths to files that + were checked out successfully and hence match the version stored in the + index""" + def __init__(self, message, failed_files, valid_files, failed_reasons): + Exception.__init__(self, message) + self.failed_files = failed_files + self.failed_reasons = failed_reasons + self.valid_files = valid_files + + def __str__(self): + return Exception.__str__(self) + ":%s" % self.failed_files |