dulwich.file._GitFile(object)
class documentationdulwich.file
(View In Hierarchy)
File that follows the git locking protocol for writes.
All writes to a file foo will be written into foo.lock in the same directory, and the lockfile will be renamed to overwrite the original file on close.
Note | You must call close() or abort() on a _GitFile for the lock to be released. Typically this will happen in a finally block. |
Method | __init__ | Undocumented |
Method | abort | Close and discard the lockfile without overwriting the target. |
Method | close | Close this file, saving the lockfile over the original. |
Method | __enter__ | Undocumented |
Method | __exit__ | Undocumented |
Method | __getattr__ | Proxy property calls to the underlying file. |
Close and discard the lockfile without overwriting the target.
If the file is already closed, this is a no-op.
Raises | OSError | if the original file could not be overwritten. The lock file is still closed, so further attempts to write to the same file object will raise ValueError. |
Note | If this method fails, it will attempt to delete the lockfile. However, it is not guaranteed to do so (e.g. if a filesystem becomes suddenly read-only), which will prevent future writes to this file until the lockfile is removed manually. |