libgit2 is a portable, pure C implementation of the Git core methods provided as a re-entrant linkable library with a solid API, allowing you to write native speed custom Git applications in any language which supports C bindings.

  • 100% Cross-Platform

    Linux, FreeBSD, OpenBSD, Mac OS X, iOS, Amiga, MinGW and fully native Windows.

  • Zero Dependencies

    Builds out of the box with no dependencies. Works in embedded devices and iOS.

  • C89

    Written with portability in mind. Builds in GCC, Clang and MSVC.

  • Permissive Licensing

    GPLv2 with Linking Exception. Link with open and proprietary software, no strings attached.

Trusted and used in production by
GitHub Microsoft Plastic SCM
Beanstalk Striata Xamarin
Canonical Bitbucket GitLab