Ben Chuanlong Du's Blog

It is never too late to learn.

Git Implementations and Bindings in Python

Things on this page are fragmentary and immature notes/thoughts of the author. Please read with your own judgement!

There are multiple Git implementations/bindings in Python: pygit2, Dulwich and GitPython .

Below is a simple comparison of the 3 packages.

pygit2 dulwich GitPython
Implementation bindings to libgit2 pure Python bindings to the git command
License GPLv2 Apache, GPLv2 BSD 3
Feature complete incomplete complete

pygit2 is preferred if the GPLv2 license is not an issue, otherwise GitPython is preferred.

References

Comments