Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Implementation of git-http-backend for IIS7/ASP.NET
C# CSS JavaScript Other
Pull request Compare This branch is 62 commits ahead, 1 commit behind JeremySkinner:master.
Failed to load latest commit information.
GitAspx Merge branch 'mvc-dll-explict-version'
lib Change NGit mount point to make it compile with local ICSharpCode.Sha…
.gitignore Drop Web.Template.config, revert to standard Web.config + Web.Debug.c…
.gitmodules Add NGit as submodule
Build.bat Build script Include test target in build script
GitAspx.5.1.ReSharper Fix some tests
GitAspx.sln Use NGit as backend library for HTTP services
License.txt License
README.txt Update README.txt


This is a simple implementation of git-http-backend written in ASP.NET 
that can be used to read/write git repositories on Windows with IIS, or Linux with mono xsp or apache.

Inspired by Grack (

This is largely untested, but has been developed with IIS7.5 under Windows 7 x64. 

The version of GitSharp included is a custom build with some minor changes and bug fixes.
Current GitSharp.dll version is (linquize)
Current GitSharp.Core.dll version is (linquize)

- Development tools: Visual Web Developer 2010 with .NET 4
- ASP.NET: MVC3 (Razor)
- Windows: IIS5.1+ (for IIS5.1, add application settings: extension=*, path=c:\windows\\framework\v4.0.30319\aspnet_isapi.dll)
- Linux: Mono 2.10.2, xsp, use xsp standalone or apache

Edit the web.config and change the "RepositoriesDirectory" app-setting to point to a directory containing git repositories.

Assuming that your repositories directory looks like this:


...and the RepositoriesDirectory app-setting is configured to be C:\Repositories:

		<add key="RepositoriesDirectory" value="C:\Repositories" />
		<add key="RepositoryLevel" value="1" />
...and the application is configured under IIS7 on port 8000, then issuing the following command will cone the Repo1.git repository:

git clone http://localhost:8000/Repo1.git

Once cloned, push/pull work as expected.

This fork includes a file viewer and file download function.
If your source code contains *.cs, *.csproj, *.vb, *.vbproj, *.java, web.config, bin directory, etc...,
please remove those extensions and "Hidden Segments" you need in IIS "Request Filtering".

There are currently no tests (something I hope to rectify soon). If you run into a problem, the best way to troubleshoot is by using Fiddler to see the raw request/response data.
Something went wrong with that request. Please try again.