Skip to main content

Python Git Library

Project description

This is the Dulwich project.

It aims to provide an interface to git repos (both local and remote) that doesn’t call out to git directly but instead uses pure Python.

Main website: <https://www.dulwich.io/>

License: Apache License, version 2 or GNU General Public License, version 2 or later.

The project is named after the part of London that Mr. and Mrs. Git live in in the particular Monty Python sketch.

Installation

By default, Dulwich’ setup.py will attempt to build and install the optional C extensions. The reason for this is that they significantly improve the performance since some low-level operations that are executed often are much slower in CPython.

If you don’t want to install the C bindings, specify the –pure argument to setup.py:

$ python setup.py --pure install

or if you are installing from pip:

$ pip install dulwich --global-option="--pure"

Note that you can also specify –global-option in a requirements.txt file, e.g. like this:

dulwich --global-option=--pure

Getting started

Dulwich comes with both a lower-level API and higher-level plumbing (“porcelain”).

For example, to use the lower level API to access the commit message of the last commit:

>>> from dulwich.repo import Repo
>>> r = Repo('.')
>>> r.head()
'57fbe010446356833a6ad1600059d80b1e731e15'
>>> c = r[r.head()]
>>> c
<Commit 015fc1267258458901a94d228e39f0a378370466>
>>> c.message
'Add note about encoding.\n'

And to print it using porcelain:

>>> from dulwich import porcelain
>>> porcelain.log('.', max_entries=1)
--------------------------------------------------
commit: 57fbe010446356833a6ad1600059d80b1e731e15
Author: Jelmer Vernooij <jelmer@jelmer.uk>
Date:   Sat Apr 29 2017 23:57:34 +0000

Add note about encoding.

Further documentation

The dulwich documentation can be found in docs/ and built by running make doc. It can also be found on the web.

Help

There is a #dulwich IRC channel on the OFTC, and dulwich-announce and dulwich-discuss mailing lists.

Contributing

For a full list of contributors, see the git logs or AUTHORS.

If you’d like to contribute to Dulwich, see the CONTRIBUTING file and list of open issues.

Supported versions of Python

At the moment, Dulwich supports (and is tested on) CPython 3.5 and later and Pypy.

The latest release series to support Python 2.x was the 0.19 series. See the 0.19 branch in the Dulwich git repository.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dulwich-0.20.25.tar.gz (414.6 kB view details)

Uploaded Source

Built Distributions

dulwich-0.20.25-cp39-cp39-win_amd64.whl (488.2 kB view details)

Uploaded CPython 3.9 Windows x86-64

dulwich-0.20.25-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (515.7 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

dulwich-0.20.25-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (529.9 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

dulwich-0.20.25-cp39-cp39-macosx_10_14_x86_64.whl (475.8 kB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

dulwich-0.20.25-cp38-cp38-win_amd64.whl (488.2 kB view details)

Uploaded CPython 3.8 Windows x86-64

dulwich-0.20.25-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (518.5 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

dulwich-0.20.25-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (531.8 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

dulwich-0.20.25-cp38-cp38-macosx_10_14_x86_64.whl (475.8 kB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

dulwich-0.20.25-cp37-cp37m-win_amd64.whl (488.1 kB view details)

Uploaded CPython 3.7m Windows x86-64

dulwich-0.20.25-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (514.7 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

dulwich-0.20.25-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (530.8 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

dulwich-0.20.25-cp37-cp37m-macosx_10_14_x86_64.whl (475.7 kB view details)

Uploaded CPython 3.7m macOS 10.14+ x86-64

dulwich-0.20.25-cp36-cp36m-win_amd64.whl (488.1 kB view details)

Uploaded CPython 3.6m Windows x86-64

dulwich-0.20.25-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (514.7 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ ARM64

dulwich-0.20.25-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (528.0 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

dulwich-0.20.25-cp36-cp36m-macosx_10_14_x86_64.whl (475.7 kB view details)

Uploaded CPython 3.6m macOS 10.14+ x86-64

File details

Details for the file dulwich-0.20.25.tar.gz.

File metadata

  • Download URL: dulwich-0.20.25.tar.gz
  • Upload date:
  • Size: 414.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.4.2 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.9.6

File hashes

Hashes for dulwich-0.20.25.tar.gz
Algorithm Hash digest
SHA256 79baea81583eb61eb7bd4a819ab6096686b362c626a4640d84d4fc5539139353
MD5 8b3ffe12be175bde061d9c25bdb21519
BLAKE2b-256 8aee105b06f79efb7cf041d88267aa5027f0ac89e8650635e29ae1973638445b

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp39-cp39-win_amd64.whl.

File metadata

  • Download URL: dulwich-0.20.25-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 488.2 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.9.6

File hashes

Hashes for dulwich-0.20.25-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 b10d8cf0e71395871c90ca29ef794ecf04665ba41550029842b53c03af1c6ac5
MD5 428f67abe9041100ba52effa49187be1
BLAKE2b-256 1b3936ec48104262797de9b97d9a90f0cb21a0065daf2b32c3875df63f251d94

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.25-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 7e9649b962b753205e0a9a0cf2537871cb89eb3751f6c24e4d5f0d349c96b394
MD5 6697c77f350cfd82fb3cbbb7e2bee787
BLAKE2b-256 0e7bee9c01b7232b260bdb1c177d090c9272274072bc40e3043cf3dbc433a7de

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.25-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 962bb4ce269f8959c818bf58b92fac601ef6c3f63a07ac46a526c83ec5bfb635
MD5 7ffa4ec274c8146877aa31da24704be5
BLAKE2b-256 2048f11e45ccbf75cc55c23629eb0b6e2a18c9f1f54eaa1d503c041f8c816d85

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp39-cp39-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.25-cp39-cp39-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 475.8 kB
  • Tags: CPython 3.9, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.9.6

File hashes

Hashes for dulwich-0.20.25-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 fabad0116db6f14568fef36962382c2ed698b8d305d2baaec9501a76eb836edd
MD5 708072979582f4e56bb5ed413541d80b
BLAKE2b-256 628c2c470c22d025b1be16e3af504a3a29117e2f2e2d51c68211ac5631678bed

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: dulwich-0.20.25-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 488.2 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.10

File hashes

Hashes for dulwich-0.20.25-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 9b432869199972f0159e7d8cee02fde088c576ff294a01f5253a4ae7cb8f57c4
MD5 d96ebea0a06bc96123bd9fe275235e76
BLAKE2b-256 a1b225cef106417c6997292e1c9589c4e89925825f46ba22fd1c86ec045f73b8

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.25-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 75816b242340c413814d22a8011d0596279ea8f4758bf2f91efd45388915f5d8
MD5 e7f1d6e609090137a0ee934587ef15c9
BLAKE2b-256 2fcc115048a6f0a0f17080cd880a866ae646973637296bd03c65fa990f420d0d

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.25-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 6d060f996fba4f7aa94e1fedc53e76e8e9ef5b8f7ec026d804a68d63b8df2867
MD5 30547ad0dccdf6c4eab2b38e29b14e61
BLAKE2b-256 91365dfc4e32c7f905babd97a057583282a6375e813f7c35d9c1e5cfe283c6fe

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp38-cp38-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.25-cp38-cp38-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 475.8 kB
  • Tags: CPython 3.8, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.8.11

File hashes

Hashes for dulwich-0.20.25-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 6dcd552e8b6899da4cb87e3a0d71673fde03d2d8cf80d2d8946e4ccca15b307c
MD5 561392d123a43c3fb28057fd46697225
BLAKE2b-256 7620759e2cbe3e53c72cc3aedb8a92f7592965d1d39764b847960d826a698e49

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: dulwich-0.20.25-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 488.1 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.9

File hashes

Hashes for dulwich-0.20.25-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 3be5fc65f84787bd9039aabf2b8b7ad1a02311a16cd0e851504784b62ba91d61
MD5 33b3138faf7138626b1f8958c0e5be76
BLAKE2b-256 f77d74319e6b76dc576f6a812b7a04fdc949d11c14285e5a76b79b8692f5ba63

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.25-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 f676d89db4777e854b28ea87b9bb1b0b156f6a743564c0daeb88502adaec7313
MD5 0c72e42cdf3aa8d074c8c67c65fb5390
BLAKE2b-256 644bfb079d88dc9f99496f7e01b6c837352bb8e39de5bd66a62dd70beba063a6

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.25-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 eb2cbc0bd62e21011161bde7f4bad7a606d7fbafe4b2e06f09d0cb8fac2e2fd2
MD5 dc1262e4b7e4e824d8022d39c137bd6a
BLAKE2b-256 10413d8c9828ef42bc2084354baf3516d0341fd21f110d97b4501f0146b288c0

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp37-cp37m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.25-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 475.7 kB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.7.11

File hashes

Hashes for dulwich-0.20.25-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 0d09bc588bfdeca14b3e41d5d75aa4f9ea6b0b298b283bc29c3aa1b2c7788653
MD5 937280dcd5828e31d855d01549669f29
BLAKE2b-256 438f84358c93b55040299162a5463892cd84d3deb023440a0ea9ccd0b49f0138

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: dulwich-0.20.25-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 488.1 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.6.8

File hashes

Hashes for dulwich-0.20.25-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 12edad6ef398815fff9e51223be5838cd66bcdb164a442f652494ae9bb54720c
MD5 38ffd1eb5f7e5088e66bf0ad43123d68
BLAKE2b-256 095062f28dd3536ba5fe72a2591b8991ca8230923fad422b84a1b25690d7a3ad

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.25-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6fad76fca381ceb914d156eb25c0cc77132cff1156d035271203c521134472b6
MD5 079062550f6cbffadd133f7a9ae011db
BLAKE2b-256 934cfe2ac82c0b8729520c0377e552bc180fcea0542ba857079e0946ab5a2b15

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.25-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 d4dbdabf71db1028f64e868081746869c17d8dbb6a16abb89b707e7a5590b121
MD5 9d5249f547d317a256916c5a03f42737
BLAKE2b-256 7823bf1e2a4e7a070e0b8e8a36f91485e465a1c94fdb90badd0af69574e4cda3

See more details on using hashes here.

File details

Details for the file dulwich-0.20.25-cp36-cp36m-macosx_10_14_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.25-cp36-cp36m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 475.7 kB
  • Tags: CPython 3.6m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.6.4 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.1 CPython/3.6.14

File hashes

Hashes for dulwich-0.20.25-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 da7655385e090b805c262df42f8b75a115345343951ca2497476df0a6287c20e
MD5 a6329e4ce671a08f1863739104845b05
BLAKE2b-256 bab7bd05633bf537499f920af703902b81ee0c444db981d1963e1274795b36da

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page