Wednesday, May 22, 2013

Libgit2: a portable and linkable git library

by Carlos Martín Nieto (elego Software Solutions GmbH)

Wednesday, 22.05.2013, New York I, 14:00-14:45 Uhr

Git is a popular version control system which started as a set of scripts calling each other that a human will run from the command line and the assumption of the human operator pervades the design up to this day, making anything but a simple shell script hard to manage. Linking against its internal library doesn't help, as the assumptions mean it will exit the application when it encounters an error.

This is where libgit2 comes in. It provides the core git functionality in a linkable library with bindings for many popular languages and works natively on multiple platforms including Windows, which has traditionally been a weakness of git. All the information is already passed to the user in a native data structures instead of forcing them to parse text.

This talk will give an overview of the problems with using git from applications and how libgit2 can make it easier, be it a GUI to handle common tasks, analysis of the history or providing a web frontend for inspecting repositories or performing code reviewIt will also examine some of the other implementations and compare their approaches and capabilities.

We will also see some success stories where libgit2 is being used currently in popular applications, what the future holds for the library and what's still missing on the road to version 1.0.

About the author Carlos Martín Nieto:

Carlos Martín Nieto has spent his youth living in different European countries. Currently he is studying Computer Science at the Free University in Berlin.

At 16 he wrote his first patch to a network driver in order to get a usable Internet connection at home and hasn't stopped hacking since. He works at elego Software Solutions GmbH in their git team.