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 Freenode, 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 Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

dulwich-0.20.12-cp39-cp39-win_amd64.whl (461.4 kB view details)

Uploaded CPython 3.9 Windows x86-64

dulwich-0.20.12-cp39-cp39-manylinux2010_x86_64.whl (503.6 kB view details)

Uploaded CPython 3.9 manylinux: glibc 2.12+ x86-64

dulwich-0.20.12-cp39-cp39-manylinux1_x86_64.whl (503.6 kB view details)

Uploaded CPython 3.9

dulwich-0.20.12-cp38-cp38-win_amd64.whl (461.3 kB view details)

Uploaded CPython 3.8 Windows x86-64

dulwich-0.20.12-cp38-cp38-manylinux2010_x86_64.whl (505.4 kB view details)

Uploaded CPython 3.8 manylinux: glibc 2.12+ x86-64

dulwich-0.20.12-cp38-cp38-manylinux1_x86_64.whl (505.4 kB view details)

Uploaded CPython 3.8

dulwich-0.20.12-cp37-cp37m-win_amd64.whl (461.2 kB view details)

Uploaded CPython 3.7m Windows x86-64

dulwich-0.20.12-cp37-cp37m-manylinux2010_x86_64.whl (504.4 kB view details)

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

dulwich-0.20.12-cp37-cp37m-manylinux1_x86_64.whl (504.4 kB view details)

Uploaded CPython 3.7m

dulwich-0.20.12-cp37-cp37m-macosx_10_14_x86_64.whl (449.4 kB view details)

Uploaded CPython 3.7m macOS 10.14+ x86-64

dulwich-0.20.12-cp36-cp36m-win_amd64.whl (461.2 kB view details)

Uploaded CPython 3.6m Windows x86-64

dulwich-0.20.12-cp36-cp36m-manylinux2010_x86_64.whl (501.6 kB view details)

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

dulwich-0.20.12-cp36-cp36m-manylinux1_x86_64.whl (501.6 kB view details)

Uploaded CPython 3.6m

dulwich-0.20.12-cp36-cp36m-macosx_10_14_x86_64.whl (449.4 kB view details)

Uploaded CPython 3.6m macOS 10.14+ x86-64

File details

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

File metadata

  • Download URL: dulwich-0.20.12-cp39-cp39-win_amd64.whl
  • Upload date:
  • Size: 461.4 kB
  • Tags: CPython 3.9, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.9.0

File hashes

Hashes for dulwich-0.20.12-cp39-cp39-win_amd64.whl
Algorithm Hash digest
SHA256 7cd783a793045db0882b035f73c836102983075b6d9bffa6426fae46be6497cd
MD5 3193a22829e7f6ccbe5743a8f06ab9b7
BLAKE2b-256 6fc3b7aacbe7ac68993798d0a6f960d41c9ab8ea56e00705d994828f49d9381e

See more details on using hashes here.

File details

Details for the file dulwich-0.20.12-cp39-cp39-manylinux2010_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.12-cp39-cp39-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 503.6 kB
  • Tags: CPython 3.9, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.9.0

File hashes

Hashes for dulwich-0.20.12-cp39-cp39-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 0ed1cf49c07fbfe4513c7d9f3177324e57da12d5aed121275cf78a6e85272a17
MD5 4e2c7c11d8f570cae423520e6f634a73
BLAKE2b-256 614a6659badbdb48021a8be8c33e2a240f7d682c7126161af26ebcdbb391f238

See more details on using hashes here.

File details

Details for the file dulwich-0.20.12-cp39-cp39-manylinux1_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.12-cp39-cp39-manylinux1_x86_64.whl
  • Upload date:
  • Size: 503.6 kB
  • Tags: CPython 3.9
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.9.0

File hashes

Hashes for dulwich-0.20.12-cp39-cp39-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 53a72a08fba0231f4f5b1d800c2ef16881df8d732c5f2901160cb2c0f96e672d
MD5 be22e74e42c4a9c987e84181f636fd70
BLAKE2b-256 29da290df3440a5f5c894dc981a3902bd22955d9b003a64c19ffda751fce51d0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.12-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 461.3 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.8.6

File hashes

Hashes for dulwich-0.20.12-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 e44fad2dfd10e8aa0437e776c5a9f5118ab132d3ebe7a67b5941529e4d62c4fb
MD5 3a7985c8b96995c18d4b9ac72a374d33
BLAKE2b-256 371d82f7b3d269ddfe87da0c5be725ed55b9b0d5d6c4fa7dcd42702da5c432c1

See more details on using hashes here.

File details

Details for the file dulwich-0.20.12-cp38-cp38-manylinux2010_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.12-cp38-cp38-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 505.4 kB
  • Tags: CPython 3.8, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.9.0

File hashes

Hashes for dulwich-0.20.12-cp38-cp38-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 1913f6c76a10e3d2cf05a3284a09f4e60f60ba2bb388ebad06cdc94179ba2ef1
MD5 a49c91c12a3a902c64c26f696300bf49
BLAKE2b-256 76d629a87370b0c431ad1d82947f36550bf46dbc6be57f3980ee4f36d54418b4

See more details on using hashes here.

File details

Details for the file dulwich-0.20.12-cp38-cp38-manylinux1_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.12-cp38-cp38-manylinux1_x86_64.whl
  • Upload date:
  • Size: 505.4 kB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.9.0

File hashes

Hashes for dulwich-0.20.12-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 fffca60f0b1dc8d0b7265738a679a2e30cac99bc2a6b8234d596a3cf595a5982
MD5 6d5eddd16455584aa174097cfb63c30e
BLAKE2b-256 797c5bba33eac82b28984af8f9867d19728005b7b87f959285767454cba80302

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.12-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 461.2 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.7.9

File hashes

Hashes for dulwich-0.20.12-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 5f91bf59e60eca480315af29ba76ca3bf206d1bf119a27b2e9ad8227ced00e3f
MD5 a0f28d56374dd734d9dcdddef49f3c5d
BLAKE2b-256 5d8b3e3879024665b92db37f563cc633a4753e13f3fc80fa926aaf5b0fb9c6c2

See more details on using hashes here.

File details

Details for the file dulwich-0.20.12-cp37-cp37m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.12-cp37-cp37m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 504.4 kB
  • Tags: CPython 3.7m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.9.0

File hashes

Hashes for dulwich-0.20.12-cp37-cp37m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 4797d95e89cb31ecf3f0fc76038c22f2c0a8eccd5c7e0759d1853e0b78c6d937
MD5 a6da99fc6dd82b154297f812acbed2af
BLAKE2b-256 af8760a81cc6cc1ee9ff66ed61666dd66a3d55429c9f7fdada8ba912337895da

See more details on using hashes here.

File details

Details for the file dulwich-0.20.12-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.12-cp37-cp37m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 504.4 kB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.9.0

File hashes

Hashes for dulwich-0.20.12-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 4e83a3f582ea75c4a69cd3294dc105bb0a36a208e70beff13a2c87facaa7b703
MD5 814d14f6eae74909e7be009b23be1f79
BLAKE2b-256 b068a9c192b3791ed8225df355bd9606d3359a46342a99d141c9cb9df9f68d88

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.12-cp37-cp37m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 449.4 kB
  • Tags: CPython 3.7m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/47.1.0 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.7.9

File hashes

Hashes for dulwich-0.20.12-cp37-cp37m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 2066b3c93bc04769e17afe511ad15730ca61db13c1f82b58566cca1517e78088
MD5 11bee6ba35ffcd711f908da9fd7d34cc
BLAKE2b-256 75af587745c1b580f661a8a242569560d61750c613f2c2787ee3ed601a809397

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.12-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 461.2 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.6.8

File hashes

Hashes for dulwich-0.20.12-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 b40b494f74082b7c6fe08abe624e308c2b881de35a560ee59a33e43dab2cb6c0
MD5 bca10ca0f0c5157a4d101d0379c6eb83
BLAKE2b-256 0154072eece71ca693940d0ad9baf9845c21191f1d25915c3b676986e871afda

See more details on using hashes here.

File details

Details for the file dulwich-0.20.12-cp36-cp36m-manylinux2010_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.12-cp36-cp36m-manylinux2010_x86_64.whl
  • Upload date:
  • Size: 501.6 kB
  • Tags: CPython 3.6m, manylinux: glibc 2.12+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.9.0

File hashes

Hashes for dulwich-0.20.12-cp36-cp36m-manylinux2010_x86_64.whl
Algorithm Hash digest
SHA256 008428760413e2d6b51923146ca2e2d611502ecc27f16630e53222484bba734a
MD5 c6240a0d206b4a33030648a6ccb05304
BLAKE2b-256 fb66db800ae55fe08f37be0d58dd33341934f6aa71ccdd8527bc13ddd62c44b7

See more details on using hashes here.

File details

Details for the file dulwich-0.20.12-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

  • Download URL: dulwich-0.20.12-cp36-cp36m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 501.6 kB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/49.2.1 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.9.0

File hashes

Hashes for dulwich-0.20.12-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 d383c7e6e0154e949194e176cf13855427a3d19e6e560fd708acc24fff640193
MD5 00c99a33c5301ba67c4f1bb699d27c28
BLAKE2b-256 815fab8038a20ed2c8d386e49ff78757d5defacc61d5b73c9535b7e5d3a1c1a9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: dulwich-0.20.12-cp36-cp36m-macosx_10_14_x86_64.whl
  • Upload date:
  • Size: 449.4 kB
  • Tags: CPython 3.6m, macOS 10.14+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/40.6.2 requests-toolbelt/0.9.1 tqdm/4.53.0 CPython/3.6.12

File hashes

Hashes for dulwich-0.20.12-cp36-cp36m-macosx_10_14_x86_64.whl
Algorithm Hash digest
SHA256 ab6155f877a9ae6a9c4017a281bb9fc66d72b71e8fc87762c000c118545ffdcf
MD5 081d3b7861308c22f99cf99b2e35a408
BLAKE2b-256 97fe54fe7b96a43592d29731804c8689c23cafcd957ff25f00394e837a4167a9

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