Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/narkoz/ginatra
A web frontend for Git repositories
https://github.com/narkoz/ginatra
git sinatra web-app web-application
Last synced: 16 days ago
JSON representation
A web frontend for Git repositories
- Host: GitHub
- URL: https://github.com/narkoz/ginatra
- Owner: NARKOZ
- License: other
- Created: 2009-05-08T22:31:15.000Z (over 15 years ago)
- Default Branch: master
- Last Pushed: 2022-05-27T17:41:51.000Z (over 2 years ago)
- Last Synced: 2024-10-09T17:24:26.181Z (28 days ago)
- Topics: git, sinatra, web-app, web-application
- Language: Ruby
- Homepage: https://narkoz.github.io/ginatra
- Size: 1.48 MB
- Stars: 525
- Watchers: 19
- Forks: 68
- Open Issues: 14
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- License: LICENSE.txt
Awesome Lists containing this project
README
# Ginatra
[![Build Status](https://img.shields.io/travis/NARKOZ/ginatra/master.svg)](https://travis-ci.org/NARKOZ/ginatra)
[![Code Climate](https://img.shields.io/codeclimate/github/NARKOZ/ginatra.svg)](https://codeclimate.com/github/NARKOZ/ginatra)
[![Gem Version](https://img.shields.io/gem/v/ginatra.svg)](https://rubygems.org/gems/ginatra)
[![License](https://img.shields.io/badge/license-MIT-green.svg)](https://github.com/NARKOZ/ginatra/blob/master/LICENSE.txt)**Ginatra** is a simple web-based git repository browser built on Ruby Sinatra.
[ [website](http://narkoz.github.io/ginatra) |
[screenshots](http://narkoz.github.io/ginatra/screenshots) |
[demo](http://narkoz.github.io/ginatra/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](http://narkoz.github.io/ginatra#features)## 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:
```sh
gem install ginatra -v 4.1.0
```Create config file (see [Configuration](#configuration) section in README).
Start the Ginatra server:
```sh
ginatra run
```By default Ginatra will run on `localhost:9797`
### Ginatra app
Run the following commands to install Ginatra from source:
```sh
git clone git://github.com/NARKOZ/ginatra.git
cd ginatra/
git checkout v4.1.0
bundle
```Create config file or modify existing (see [Configuration](#configuration) section in README).
Start the Ginatra server:
```sh
./bin/ginatra run
```By default Ginatra will run on `localhost:9797`
## Configuration
Create `~/.ginatra/config.yml` file with your own settings. See
[`config.yml`](https://github.com/NARKOZ/ginatra/blob/master/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:
```sh
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](https://github.com/NARKOZ/ginatra/blob/master/CONTRIBUTING.md).