libgit2/libgit2 — pull request #1062 by pwkelley (2012-11-12 01:19:04+00:00)
Title: Add git_transport_register, unregister

This change allows consumers of the library to register their own transports by calling `git_transport_register` and `git_transport_unregister`. This could be used to replace the built-in transports with a custom one, or add support for another protocol that libgit2 doesn't have a built-in transport for.

There's a very simple test added for this functionality here, but I also have libgit2sharp bindings for smart protocol subtransports ready. The Libgit2sharp test is able to use the .NET `HttpWebRequest` class to re-implement the http subtransport in just a few lines of code, and I think that's a much more comprehensive test of the functionality.