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.
Linux, FreeBSD, OpenBSD, Mac OS X, iOS, Amiga, MinGW and fully native Windows.
Builds out of the box with no dependencies. Works in embedded devices and iOS.
Written with portability in mind. Builds in GCC, Clang and MSVC.
GPLv2 with Linking Exception. Link with open and proprietary software, no strings attached.