Skip to content

hallison/git-lighttp

Repository files navigation

Git-Lighttp - Web light end smarty for Git

Gem Version Build Status Code Climate Inline docs

DESCRIPTION

This project was inspired in the Grack Smart-HTTP server handler (written by Scott Chacon) but developed using Sinatra and aims replace the original git-http-backend including new features.

The main goal of the Git-Lighttp is implement the following useful features.

  • Smart-HTTP, based on git-http-backend.
  • Authentication flexible based on database or configuration file like htpasswd.
  • Authorization flexible based on database or configuration file like htgroup.
  • API to get information about repository (Treeish).

SINOPSIS

Install the Git-Lighttp using Rubygems.

$ gem install git-lighttp

Or checkout the project hosted on Gitlab or Github.

$ git clone https://gitlab.com/hallison/git-lighttp.git
$ ...
$ cd git-lighttp
$ make install

Configure the Rackup file (config.ru) using the following instructions:

# config.ru
require "git/lighttp"

Git::Lighttp::HttpBackend.configure do |server|
  server.project_root = "/home/git/repositories"
  server.git_path     = "/usr/bin/git"
  server.get_any_file = true
  server.upload_pack  = true
  server.receive_pack = false
  server.authenticate = true
end

run Git::Lighttp::HttpBackend

And run:

$ rackup --port 9092 --daemonize
$ git clone http://localhost:9092/mycode.git

You can use the .netrc for improve your connection. Put this:

machine <host> login <username> password <password>

The Git-Lighttp is under development, so there are still many improvements to be made. Please, help us to improve the project sending your feedback to issues or sending email to hallisonbatista@gmail.com.

Discuss in Google Groups.

AUTHORS

Written by Hallison Batista hallisonbatista@gmail.com.

BUGS

If you find a bug, please report it at the Git-Lighttp project's issues tracker on Gitlab or Github.

LICENSE

Git-Lighttp is Copyright (c) 2011-2016 Hallison Batista.

This is free software, and may be redistributed under the terms specified in LICENSE.txt.

About

Git Light (Smart) HTTP Ruby/Sinatra implementation with useful features

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published