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.24.tar.gz (414.0 kB view details)

Uploaded Source

Built Distributions

dulwich-0.20.24-cp39-cp39-win_amd64.whl (487.4 kB view details)

Uploaded CPython 3.9 Windows x86-64

dulwich-0.20.24-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (530.1 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

dulwich-0.20.24-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (529.2 kB view details)

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

dulwich-0.20.24-cp39-cp39-macosx_10_14_x86_64.whl (475.0 kB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

dulwich-0.20.24-cp38-cp38-win_amd64.whl (487.4 kB view details)

Uploaded CPython 3.8 Windows x86-64

dulwich-0.20.24-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (531.9 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

dulwich-0.20.24-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (531.0 kB view details)

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

dulwich-0.20.24-cp38-cp38-macosx_10_14_x86_64.whl (475.0 kB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

dulwich-0.20.24-cp37-cp37m-win_amd64.whl (487.2 kB view details)

Uploaded CPython 3.7m Windows x86-64

dulwich-0.20.24-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (531.1 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

dulwich-0.20.24-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (530.0 kB view details)

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

dulwich-0.20.24-cp37-cp37m-macosx_10_14_x86_64.whl (474.9 kB view details)

Uploaded CPython 3.7m macOS 10.14+ x86-64

dulwich-0.20.24-cp36-cp36m-win_amd64.whl (487.2 kB view details)

Uploaded CPython 3.6m Windows x86-64

dulwich-0.20.24-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (528.4 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ ARM64

dulwich-0.20.24-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (527.2 kB view details)

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

dulwich-0.20.24-cp36-cp36m-macosx_10_14_x86_64.whl (474.9 kB view details)

Uploaded CPython 3.6m macOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: dulwich-0.20.24.tar.gz
  • Upload date:
  • Size: 414.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.3.0 pkginfo/1.4.2 requests/2.25.1 setuptools/52.0.0 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.2

File hashes

Hashes for dulwich-0.20.24.tar.gz
Algorithm Hash digest
SHA256 6b61ac0a2a8b1b1e18914310f3f7a422396334208b426b9de570f1de31644cf1
MD5 8ef032985fc02c0f93ee8db448e64cea
BLAKE2b-256 7cd2a361b4831494531d5112e000d92762fc2926ed45ca7f9e9013f2e90c011c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.24-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 487.4 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6

File hashes

Hashes for dulwich-0.20.24-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8853b0306406f6fb82812d2fc2af43d4cda50ea0223551c3b27df5eb008b655f
MD5 68f04e1f408009732758e93639d6e021
BLAKE2b-256 2203fb2aef3abc7baf92d3a44c3090be81cdf1855ead9599bf54a30882f3ac95

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.24-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fc97a857b274f5ed41f73c4593e665924a38f613835cfd72c55393a710a64a49
MD5 7cc1c87c606f7c6f5c7dd873138f4b91
BLAKE2b-256 2e90d4aa85d74a7f7ccab6ba1be09846e71d642b00cf725c84b107537d05d3eb

See more details on using hashes here.

File details

Details for the file dulwich-0.20.24-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.24-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 7bee1516e0516ff441a93206d0bc0816781ee7f6df37c9f01a9578e2bff7cc7c
MD5 c53516f8d0df4113c2d8f025ce25f038
BLAKE2b-256 6d1c2116710afa591a1ef6d9ff9753a7da9294387f0916ecfcfda34eae344d8b

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dulwich-0.20.24-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 3ab53d08bc8405cc99a1018e837b2866e0e1d0797999ab94bdfdc3b5369ec325
MD5 b06e647bcc7ef8ce0d4bd9a3435492db
BLAKE2b-256 3e96a1872d37e89e945cbde7b270c10ef7d4727885dc96f32f64eac00776a2a9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.24-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 487.4 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.8.10

File hashes

Hashes for dulwich-0.20.24-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 08a09353620981c8e9cc7ace76f71c8859bf035ae91c1b2bddb54494fe3b7638
MD5 9c6d67ac97f6cb7993c5ae9f0585dd4b
BLAKE2b-256 237201d24431da2ee5a6a3031e85048827a29b929653291f72c5e5d2ba619e73

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.24-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 8025f7249f9ed719af5cf041ac9a8de8fae0bf08875e9dcaedbccc98f4ea67a7
MD5 5fccc0f9bf235add3e8e41674a9fa0eb
BLAKE2b-256 4ba091eafdb769af2540491f45417e0a2242995096d870a4ab5967e7ab0f70f3

See more details on using hashes here.

File details

Details for the file dulwich-0.20.24-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.24-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 68cbdeae2e0c247690243c77c8b5cc671d6a091d6fbfcd43ff5eae13210e384f
MD5 36f39d734d615e98ad1b913df723a4d0
BLAKE2b-256 ea6ed78f433c110d50762d81b8350113cb7840a3a067448a4fcd417243a195b3

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dulwich-0.20.24-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 aba891770d741613a13fc2d76972d99fff9b26a15383ad0f0bfbd3890e2b7a00
MD5 1f33145fcdf51250562a112859f87b26
BLAKE2b-256 d0e27a1f9eef60d2820b5be5f8da6edaaee2a5ee117664f65ac8b63686631b20

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dulwich-0.20.24-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 bcd9c85ea319f7c7076de2717da0532dc99b1e4fd0bea374522af7436179f72f
MD5 a3f305ee9e9afa5eace208f1b094851d
BLAKE2b-256 04957d710c90aa06c0f24eacb79f72c297236c7f22b8571bed6537435cc9530f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.24-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 df138aa678e3c6d9c1b21fa8e591311c0871b72fca635cc3c35361a540cc3ad1
MD5 65830c3ecd32125d110fc60d3e4d7f88
BLAKE2b-256 ea8f528db7a93743da0d23c0848e1e33b6075a566ccd6550bc4bd89055fee976

See more details on using hashes here.

File details

Details for the file dulwich-0.20.24-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.24-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 b9266eba455b399cbda79eac0a138dd80fd8af180e5dcf759d242749936eaeb3
MD5 48ff442fb99abe30d52546db1e5a6800
BLAKE2b-256 7e551abdf1d0f62efd5f392f85c7a33e23f04c91d936866213cd9b99252315c6

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dulwich-0.20.24-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 fe649f2c95c209452639075d0ccd8cad6bda960044cf9b2e6268e1ac6ed30bac
MD5 8a4e0541fca5d015f9946e71ca492e21
BLAKE2b-256 4ed75d36a9e21ac354913a3d5b44d4f3018aa6d2018d9e93da352e1d654fa37b

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dulwich-0.20.24-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 3d4249dd7bd608932ff3e8362b18f9b8ad899436063f8dd395355fd345da92c3
MD5 04a5e5965b5f93ef9d293716c886bac4
BLAKE2b-256 14fd1e554cdfc4541c6f8f8d380a6d3a7c3aa935d7e096661034ca225e1f2ca8

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.24-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5ff59d02a4d61ee273708b85a8b370d46ea4bedd097904ab92682a2d44553284
MD5 3492982d13dc9fe70b0cb91f17f83d93
BLAKE2b-256 b0a0d6766edafcea3dc6db9813b76e4ca825542402eb410d5f90e61a144981fd

See more details on using hashes here.

File details

Details for the file dulwich-0.20.24-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.24-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 bab10f9580372267c3385e3ab9b3939e212a713f398c410d6f1392f96d6f0ffa
MD5 b05f158ec540821bb5bab2f6ddd09585
BLAKE2b-256 17f3e15d0400f8f781da2489e57ab7e89abe4839d5b09cf37c87213006d57115

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for dulwich-0.20.24-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 555c88a1076cd1cab12c5dac93239e63e2dc4347ae475c5ca0ea5494098eab0f
MD5 70ff59e8d605d37c121305a96081f111
BLAKE2b-256 d2004b1f18536c4d0ec11cd2b7c585112e1f156f3bd436ffdf9fac7fb8f9197d

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