Skip to content
A web frontend for Git repositories
Ruby JavaScript HTML CSS
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
bin
lib
public
repos
spec
views
.gitignore
.travis.yml
CHANGELOG.md
CONTRIBUTING.md
Gemfile
Gemfile.lock
LICENSE.txt
README.md
Rakefile
config.ru
config.yml
ginatra.gemspec

README.md

Ginatra

Build Status Code Climate Gem Version License

Ginatra is a simple web-based git repository browser built on Ruby Sinatra.

[ website | screenshots | demo ]

Features

  • Easy installation
  • Multiple repository support
  • Multiple branch/tag support
  • Commit history, diff, patch
  • Feeds in Atom format
  • Syntax highlighting
  • Repository stats
  • Smart HTTP support
  • and more

Installation

There are 2 ways to install Ginatra: as a packaged Ruby gem or as a Sinatra app.
It's recommended to install it as a ruby gem, unless you know what you're doing.

Ginatra gem

Run the following command to install Ginatra from RubyGems:

gem install ginatra -v 4.1.0

Create config file (see Configuration section in README).

Start the Ginatra server:

ginatra run

By default Ginatra will run on localhost:9797

Ginatra app

Run the following commands to install Ginatra from source:

git clone git://github.com/NARKOZ/ginatra.git
cd ginatra/
git checkout v4.1.0
bundle

Create config file or modify existing (see Configuration section in README).

Start the Ginatra server:

./bin/ginatra run

By default Ginatra will run on localhost:9797

Configuration

Create ~/.ginatra/config.yml file with your own settings. See config.yml for a reference.

git_dirs - Ginatra will look into these folders for git repositories. It's required to append * at the end of path. Example: /home/Development/repos/*

sitename - name of the site. Used in the page title and header.

description - description of web interface. Used in index page.

port - port that Ginatra server will run at.

host - host that Ginatra server will run at.

prefix - prefix for the host serving Ginatra. Used when Ginatra is installed in subdirectory.

git_clone_enabled? - enables smart HTTP support and allows to clone git repositories.

log_file - location of the log file where Ginatra will log warnings and errors. If this setting doesn't present Ginatra will log out to the standard output (stdout).

If you installed Ginatra as an app, you can change settings by editing config.yml file in root folder.

You need to restart web server after applying changes to config file.

CLI

You can interact with Ginatra via CLI. The following commands are available:

ginatra run    # Starts Ginatra server
ginatra stop   # Stops Ginatra server
ginatra status # Checks status of the Ginatra server (running or not)
ginatra -v     # Shows version of Ginatra
ginatra -h     # Lists available commands and their options

How to Contribute

Open issues are labeled per perceived difficulty. See contributing guidelines.

You can’t perform that action at this time.