dulwich.file module

Safe access to git files.

exception dulwich.file.FileLocked(filename, lockfilename)

Bases: Exception

File is already locked.

dulwich.file.GitFile(filename, mode='rb', bufsize=- 1, mask=420)

Create a file object that obeys the git file locking protocol.

Returns: a builtin file object or a _GitFile object

Note: See _GitFile for a description of the file locking protocol.

Only read-only and write-only (binary) modes are supported; r+, w+, and a are not. To read and write from the same file, you can take advantage of the fact that opening a file for write does not actually open the file you request.

The default file mask makes any created files user-writable and world-readable.

dulwich.file.ensure_dir_exists(dirname)

Ensure a directory exists, creating if necessary.