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

Uploaded Source

Built Distributions

dulwich-0.20.23-cp39-cp39-win_amd64.whl (487.0 kB view details)

Uploaded CPython 3.9 Windows x86-64

dulwich-0.20.23-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (529.9 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

dulwich-0.20.23-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (529.0 kB view details)

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

dulwich-0.20.23-cp39-cp39-macosx_10_14_x86_64.whl (474.9 kB view details)

Uploaded CPython 3.9 macOS 10.14+ x86-64

dulwich-0.20.23-cp38-cp38-win_amd64.whl (487.0 kB view details)

Uploaded CPython 3.8 Windows x86-64

dulwich-0.20.23-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (531.8 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

dulwich-0.20.23-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (530.9 kB view details)

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

dulwich-0.20.23-cp38-cp38-macosx_10_14_x86_64.whl (474.9 kB view details)

Uploaded CPython 3.8 macOS 10.14+ x86-64

dulwich-0.20.23-cp37-cp37m-win_amd64.whl (486.9 kB view details)

Uploaded CPython 3.7m Windows x86-64

dulwich-0.20.23-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (531.0 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

dulwich-0.20.23-cp37-cp37m-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.7m manylinux: glibc 2.12+ x86-64 manylinux: glibc 2.5+ x86-64

dulwich-0.20.23-cp37-cp37m-macosx_10_14_x86_64.whl (474.8 kB view details)

Uploaded CPython 3.7m macOS 10.14+ x86-64

dulwich-0.20.23-cp36-cp36m-win_amd64.whl (486.9 kB view details)

Uploaded CPython 3.6m Windows x86-64

dulwich-0.20.23-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (528.2 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ ARM64

dulwich-0.20.23-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (527.0 kB view details)

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

dulwich-0.20.23-cp36-cp36m-macosx_10_14_x86_64.whl (474.8 kB view details)

Uploaded CPython 3.6m macOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: dulwich-0.20.23.tar.gz
  • Upload date:
  • Size: 414.1 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.57.0 CPython/3.9.2

File hashes

Hashes for dulwich-0.20.23.tar.gz
Algorithm Hash digest
SHA256 402e56b5c07f040479d1188e5c2f406e2c006aa3943080155d4c6d05e5fca865
MD5 ffa83b066a051c4134dcc3e2159c3328
BLAKE2b-256 85f1eab86c0058d2195ec084dd200c3e4179871e13e4f38f17ff3f6c7dee3c56

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.23-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 487.0 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for dulwich-0.20.23-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 ebdff115e6fc45b957322d9f5197ef947eb3cf523449612228fb3b1f6133acb6
MD5 555de83d47b2d743360205369e115dbc
BLAKE2b-256 81e8ed6da9fd09c989eb5a18566f661e907409928f3fe5e3724f655a5c9e720f

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.23-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 645429801e9f4dd25e08fa6cb72175af2a9e7e396fb6d0983ab98f8af4d6d9ab
MD5 b0fec885b5320a1762461f39063d64e2
BLAKE2b-256 53443b37d96e7c63034652e5a9130626772d78de161654f1d68535709be25c6e

See more details on using hashes here.

File details

Details for the file dulwich-0.20.23-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.23-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 992767878cca3997454d397aa60d9df456b7204e64322dbec3c76b32a4bae070
MD5 2e5746a5d26c273959e5df5d2e1dab24
BLAKE2b-256 a27ea1b9dd4bea0aea8ee5c8bcba9ac59a51665592c85b0f5b94efc74ab6712f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.23-cp39-cp39-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 474.9 kB
  • Tags: CPython 3.9, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5

File hashes

Hashes for dulwich-0.20.23-cp39-cp39-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 8d982f98f692acb7614f60d701b5eaf10f05dddb0482182ef3aae2fed0f5df83
MD5 60a9a43156b5999c6198cb5e15f4f176
BLAKE2b-256 483d4cf4089c14064359bf976d25e2529f028c8553bb4ae4664135e068b17d0d

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.23-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 487.0 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.8.10

File hashes

Hashes for dulwich-0.20.23-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 c0a2def5f6d3293a9d13dc0ce4f4674525fdf94644909fa56b57a3d2cf642fad
MD5 c1ba577fc00fbac7c45a506f357a2ae5
BLAKE2b-256 5726442a016b52329e0f1c8fa2df53199b92176f325e2a9b30249944eab9de98

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.23-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 02439319d764d2df194a81f96ad65d5ad4e09e5b10c9d0ed22a28aa2ca8aec4f
MD5 bb085a1a065adb4c7db4ae5a61ccc7f1
BLAKE2b-256 661736d5fcbebb980e3c8a55725e78b03be270152337bd07c3bac9840f90afae

See more details on using hashes here.

File details

Details for the file dulwich-0.20.23-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.23-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 d410093f9b37089c8199853f8442c9577fc2b7bd985b6568a32461d15397ad67
MD5 67a75f0d86fb24aed70f239455d0c7a1
BLAKE2b-256 c1b3fc7a76fc0209b62dbb36678774f1f6c26fa3b9be4e061e8bf50a10e4e220

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.23-cp38-cp38-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 474.9 kB
  • Tags: CPython 3.8, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.8.10

File hashes

Hashes for dulwich-0.20.23-cp38-cp38-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 89606403c43e4d78ce549f5ba5d82c2d263027ec3ea7f51873861d9f511a0362
MD5 764117b8b8e6bd6edaa1fc52abc0eab1
BLAKE2b-256 f8ae7e68d471165f11db0e0b89c0db68fd1b5897cfb96621c325793693395af1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.23-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 486.9 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.7.9

File hashes

Hashes for dulwich-0.20.23-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 5fa3db56cc86fe4e16b9645b12b2a9e19ae7263817e97a2cee744b5062769c55
MD5 89efef9f1e8fdae437d00c45dcb49577
BLAKE2b-256 acfa2ae3733a38c5536fb9e9ec1ef656a70598abaca13b53d4de2b9b56b812e6

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.23-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 53a5db0f85cf5868766b92c03278ca0ba36bccf2076cfaed4b91c034a8dbc967
MD5 5d7abe19cfb5835185bec2f152b99757
BLAKE2b-256 079c646feef325fa275237c26c2c7cc5d22bebbc0ee571a424e166f4234a419e

See more details on using hashes here.

File details

Details for the file dulwich-0.20.23-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.23-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 7bc04283563d0f0b56b0686ad55702108950d4ed66c8ce4216400f5046b77d59
MD5 f2370ef9bde106662cc8e96818f0faeb
BLAKE2b-256 04f0dab35f0491fa36cfc28abd48f150885a08a8726900da25549dbd461bf115

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.23-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 474.8 kB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.7.10

File hashes

Hashes for dulwich-0.20.23-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 c4cd03c793e11c8ad3c96f296a908837483f82746b3aa8c680389cd5ca3c25a6
MD5 64d5b8f52e9e1b04a935ccaf76f35240
BLAKE2b-256 c3fd7f333d1c2aeb6830c9f3e152b75214c73d00ccc56c2719080150c99d76bc

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.23-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 486.9 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.6.8

File hashes

Hashes for dulwich-0.20.23-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 7a3992324e896afcb262fb384345f9a36364f8f9be848779041a15897897ec23
MD5 c70349aee6823558c4ab9366269ea95d
BLAKE2b-256 2cb3a1904fd38381cc6cd074c6c0c48fc904aaaf82e537e8b406e21678f7297d

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.23-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fad33179c8c3a5782740865151a4011c4665bc6e356a200c9543637a180254e1
MD5 73d085faa90465dd9d3d224bd99b3f6a
BLAKE2b-256 e3687813aa3f74d0cdb34030e348a01cf3a9d5ce1d25db89187bd4857619c034

See more details on using hashes here.

File details

Details for the file dulwich-0.20.23-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.23-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 a4fa6221978437508d7974a8239a21c6291b35230409427a0de8a67b40905140
MD5 cbd0d163e1d5e1ebac26397aac501b18
BLAKE2b-256 d3592b43758270a256de8ddee2009393ff8c63f7c397cda10c7b299be784f8be

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.23-cp36-cp36m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 474.8 kB
  • Tags: CPython 3.6m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.6.13

File hashes

Hashes for dulwich-0.20.23-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 17c556b81a9593003b40c60bf80698802834458ee4c969ccf9a55077de876785
MD5 95c201f1c1a42ccf7a9005336565d189
BLAKE2b-256 73cc823cd6a4e453cf0a6b400a3a9fe32cbeedcee10d4cb7ad8279da81f10592

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