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 a dulwich-discuss mailing list.

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.6 and later and Pypy.

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

Uploaded Source

Built Distributions

dulwich-0.20.37-cp310-cp310-win_amd64.whl (496.0 kB view details)

Uploaded CPython 3.10 Windows x86-64

dulwich-0.20.37-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (538.1 kB view details)

Uploaded CPython 3.10 manylinux: glibc 2.17+ ARM64

dulwich-0.20.37-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (552.3 kB view details)

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

dulwich-0.20.37-cp310-cp310-macosx_10_15_x86_64.whl (483.7 kB view details)

Uploaded CPython 3.10 macOS 10.15+ x86-64

dulwich-0.20.37-cp39-cp39-win_amd64.whl (495.9 kB view details)

Uploaded CPython 3.9 Windows x86-64

dulwich-0.20.37-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (537.5 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.17+ ARM64

dulwich-0.20.37-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (551.8 kB view details)

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

dulwich-0.20.37-cp39-cp39-macosx_10_15_x86_64.whl (483.7 kB view details)

Uploaded CPython 3.9 macOS 10.15+ x86-64

dulwich-0.20.37-cp38-cp38-win_amd64.whl (495.9 kB view details)

Uploaded CPython 3.8 Windows x86-64

dulwich-0.20.37-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (540.4 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.17+ ARM64

dulwich-0.20.37-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (553.6 kB view details)

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

dulwich-0.20.37-cp38-cp38-macosx_10_15_x86_64.whl (483.7 kB view details)

Uploaded CPython 3.8 macOS 10.15+ x86-64

dulwich-0.20.37-cp37-cp37m-win_amd64.whl (495.7 kB view details)

Uploaded CPython 3.7m Windows x86-64

dulwich-0.20.37-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (536.5 kB view details)

Uploaded CPython 3.7m manylinux: glibc 2.17+ ARM64

dulwich-0.20.37-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (552.6 kB view details)

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

dulwich-0.20.37-cp37-cp37m-macosx_10_15_x86_64.whl (483.6 kB view details)

Uploaded CPython 3.7m macOS 10.15+ x86-64

dulwich-0.20.37-cp36-cp36m-win_amd64.whl (495.7 kB view details)

Uploaded CPython 3.6m Windows x86-64

dulwich-0.20.37-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (536.5 kB view details)

Uploaded CPython 3.6m manylinux: glibc 2.17+ ARM64

dulwich-0.20.37-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl (549.8 kB view details)

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

dulwich-0.20.37-cp36-cp36m-macosx_10_14_x86_64.whl (483.3 kB view details)

Uploaded CPython 3.6m macOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: dulwich-0.20.37.tar.gz
  • Upload date:
  • Size: 422.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.10.4

File hashes

Hashes for dulwich-0.20.37.tar.gz
Algorithm Hash digest
SHA256 e272fd125935258c57682fd824de34d4d0e702da779afcfb796faadc1c58bcca
MD5 5e7015e7ba0ec0730aec09c1cf5fa68b
BLAKE2b-256 6f016e85b85a4bcf6d7448519549108b4ddce32a478944437e2976049875cf2f

See more details on using hashes here.

File details

Details for the file dulwich-0.20.37-cp310-cp310-win_amd64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.37-cp310-cp310-win_amd64.whl
Algorithm Hash digest
SHA256 45d448dc4dd45807b939eb6463210d87c2d975b16b8b250135b79af6e67ff063
MD5 4879ea8eead9889b7b25b3a05f46a9d4
BLAKE2b-256 33eb88e52b9ad831995fafbe6dec2d4b76bc1b76593cc54675fcae5af10b7ef4

See more details on using hashes here.

File details

Details for the file dulwich-0.20.37-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.37-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 6a4f1f745f35a6cac052f5f161c5524494df7b776795285a5d7409180fcbb5a1
MD5 177c8ffc77f141e373a6f6e7c309d8d6
BLAKE2b-256 d797a66efea0048c078977835df94f08ec498ff29fa65c52021bae02edbd7e89

See more details on using hashes here.

File details

Details for the file dulwich-0.20.37-cp310-cp310-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.37-cp310-cp310-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 2072ba3d39ee48dd33e29cae1d7514f29d608c5c4b04ff0b4fff85e991e846fc
MD5 a67c0cb7f2de63c15379390097033c42
BLAKE2b-256 76d0b67b88ffceea2e173d29eefb9fb4a475cac4c3bdb053edef7195866b51f2

See more details on using hashes here.

File details

Details for the file dulwich-0.20.37-cp310-cp310-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.37-cp310-cp310-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 4d8c90b47a1f7cb2392626e4f3f7b4016cb47ed72de4d88ecae0c0109d01122a
MD5 5cba4be8d757c88cb183fe51a805b292
BLAKE2b-256 05621bb672f75e0946c59bc451a0b54b7d24888834ae2716e360c6df38951115

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.37-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 495.9 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.12

File hashes

Hashes for dulwich-0.20.37-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 8b588f378c52a123d049c08522bca631abdb1fbbfbe46c6dfb835eae84865bde
MD5 dba1bcca25dcf6b2cc991411e8296f79
BLAKE2b-256 414ddf26b743f92baaf659083d964c739f6baf0052ce9ca2013cc2b32a7ab034

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.37-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 18bebdbe892719f7d7cf2ead6f7b6d9d8d4bbb23778d195f66f804856754fdb1
MD5 02c99f5ecc414ca15fba152e0a759942
BLAKE2b-256 1e6fc062c9ceac05f13caed46825e67a80d8bc0ebb9dc56ff7d4cbb11c3b18ac

See more details on using hashes here.

File details

Details for the file dulwich-0.20.37-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.37-cp39-cp39-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 0b3f3df9b9bfbf17bbc23d20585a8485351749d6f0110ef53eea5a9c00c45605
MD5 14dee6475666aa942248b2921d265962
BLAKE2b-256 58d050cc90b36fe050ef0298888ed98849cbcbe0c350eb4a663c4a624809e34e

See more details on using hashes here.

File details

Details for the file dulwich-0.20.37-cp39-cp39-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.37-cp39-cp39-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 98db5b3181f4646d941372fb641c1d452038679ee15fcb2bd965238832cacbcc
MD5 bcf3daa796927b61631300500990d105
BLAKE2b-256 8d4b728b756efa926d656f1e7837ebdffd15872b9cf38eb8c8664de94a10daa1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.37-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 495.9 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.8.10

File hashes

Hashes for dulwich-0.20.37-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 b83762e5361ce5dbd09e8d26b05fb127bf521a276f6c530e2f82138dd3f10dfe
MD5 509a313f5b10e0544670e6b0ef03bd1d
BLAKE2b-256 3835b3562e841c0f61144ee6516fb5f9b6a68e0ca6ce90896592a0aa5a017072

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.37-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 708e081b516a6167add3cbd4a277aefe32e6c7462154eeca03f9d4220790dc96
MD5 ed48d85db199bd066eaf409b3a3be739
BLAKE2b-256 7f67f3e70d81468013fedc76596e9731ea962441e739db4ee2faa81987fbc253

See more details on using hashes here.

File details

Details for the file dulwich-0.20.37-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.37-cp38-cp38-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 5a5e643635940f59701e31a4f7da1b7b23f4f3b767a0c119420f3927c00306c5
MD5 2a9f75695a4cbaf8270709bcce3f0d4e
BLAKE2b-256 109e7505be965fbfc00bb80922d3bcc27b804e81d184ec9f7a70c4933b7ddf4c

See more details on using hashes here.

File details

Details for the file dulwich-0.20.37-cp38-cp38-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.37-cp38-cp38-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 d00539d62a3ff6470013f7afd4a413b5bdfe17c8597615e7b56d120189890769
MD5 f0e8740f1752bb17af95fc5277e60d71
BLAKE2b-256 7c77c38bbb07fa2df06be771d51c3dcdf2711e3e224432c2d8d67f7edfa04f44

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.37-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 495.7 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.7.9

File hashes

Hashes for dulwich-0.20.37-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 d63868ead7459df53e32e4fbd65c0fe7ba48bdac0d9c86a977273ba6533c61c7
MD5 b61d5212af0a092787e0cd621df94ad6
BLAKE2b-256 425587cc23488a2db127a96402534d2c34c559804da5af1ef9c964edae3487b3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.37-cp37-cp37m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 baec0de1393db39d1315f6af31326f249236a347df88678b928ab29857bbcfc1
MD5 370861cb2a099e9d3edf1240dbb7cb5e
BLAKE2b-256 13de993476b6ad5039ef4ec7c6b645b7742fab600f3c051d67e30f5752632cd0

See more details on using hashes here.

File details

Details for the file dulwich-0.20.37-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.37-cp37-cp37m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 b87324685a8a66fb70b5631963168e57949af8fd501788538cbe0fcdba9f17bc
MD5 b8ec73c0d6593840147506bfdf731455
BLAKE2b-256 11975854deb110cc408a37cca9c2cedd33cc9d024d380a82ceb23fd6c9bc2b0b

See more details on using hashes here.

File details

Details for the file dulwich-0.20.37-cp37-cp37m-macosx_10_15_x86_64.whl.

File metadata

File hashes

Hashes for dulwich-0.20.37-cp37-cp37m-macosx_10_15_x86_64.whl
Algorithm Hash digest
SHA256 a66827a4c8bc204c9dbe4f1b1eb8a8e7421a6307cbd5d04dea7df5708577aa0a
MD5 73521ebaedc1c0ab194262e797efabf5
BLAKE2b-256 f274fbeaf966e856da89baadc56f0d06a07c8e1dc2f80829d3f29ad2fb13832f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.37-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 495.7 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.8

File hashes

Hashes for dulwich-0.20.37-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 042362b9443dc18e62ff82153a29c7fcdbe524e771173199f9142adc20e2a557
MD5 101d046ba0b1962a506d875ed1525677
BLAKE2b-256 9266331cf72013e86679b07b1ebd543f79590fb6bfc89c639ffef0ff7ba9061c

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for dulwich-0.20.37-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 5aaec094817d0c358e6e0e3b70e7259077fd2eff88a99c4ac6f858e19da43381
MD5 4b3389d0f4263ca611f1d9b5fab8afe7
BLAKE2b-256 223d358bb7777afc7be00875326111d9cd46b1a05ec5a3de60b647f11584b20e

See more details on using hashes here.

File details

Details for the file dulwich-0.20.37-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.37-cp36-cp36m-manylinux_2_5_x86_64.manylinux1_x86_64.manylinux_2_12_x86_64.manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 72ea28ff10a13c9d9a6ad5b806a8ba5c757be9baeac9664af196cc13f9cf9cfb
MD5 22bbbb9b08ce2f9512265537914a4b75
BLAKE2b-256 5e3589126b2028863ac0183540e45ac3da8d3107b5a02b3f12d29d8234984688

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.37-cp36-cp36m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 483.3 kB
  • Tags: CPython 3.6m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/34.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.9 tqdm/4.64.0 importlib-metadata/4.8.3 keyring/23.4.1 rfc3986/1.5.0 colorama/0.4.4 CPython/3.6.15

File hashes

Hashes for dulwich-0.20.37-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 7a22c8d70f04ef017e2166e882a4185bce1b028ce8230d1f38678bedc6604540
MD5 6dee27df5c2d6f29d06dd5c52f0305be
BLAKE2b-256 cae070dd1f2e0645d558fff5b8b1f8c815260f287242fe9120de06f610448108

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