#Gitserve
For the time being, gitserve
is meant to be a Connect/Express compatible port of git http-backend
for serving git repos over HTTP/HTTPS. My long term vision for this project is a framework built on top of Connect/Express for easily building and deploying remote git servers by stacking needed features via middlewares.
Bug reports, contributions and feature requests are always welcome!
##Getting Started
gitserve
takes an options hash and exposes a Connect/Express compatible middleware. The only required option is the directory in which the bare repositories are located.
#####Install
$ npm install gitserve
#####Connect/Express Middleware
var connect = require('connect')
, gitserve = require('gitserve');
var app = connect()
.use(gitserve({ repos: '/path/to/repos' }));
app.listen(3000);
#####Repo namespacing
gitserve
allows for a leading wildcard path to namespace your repos. For instance, to mimic Github's namespacing you would add a remote
$ git remote add origin http://localhost:3000/JibSales/myAwesomeProject
and gitserve
will look in /path/to/repos/JibSales/myAwesomeProject
for a valid git repository. The namespacing can go as deep as your heart desires.
##License MIT
##Special Thanks Big ups to James Halliday aka, substack as reading through his pushover module made understanding the Smart HTTP Protocol a breeze.