Skip to content

A Git source code management tool powered by Elixir with easy installation & high extensibility.

License

Notifications You must be signed in to change notification settings

redrabbit/git.limo

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Git.limo

Elixir CI GitHub license Github Issues

A Git source code management tool written in Elixir.

  • Simple yet intuitive web interface.
  • Git HTTP and SSH support.
  • Fully integrated GraphQL API.
  • Customizable Git storage backend.
  • Distributed setup (cluster).
  • Issue tracker.
  • Code reviews.
  • Continuous integration.

See the Getting Started guide and the online documentation.

Install dependencies

First, ensure you have libgit2 installed on your system:

OSX

brew install libgit2

Ubuntu

sudo apt-get install libgit2-dev

You will also need Node.js to compile Web assets and PostgreSQL to store your application data.

Clone and compile

Clone the latest version of the project:

git clone https://github.com/almightycouch/gitgud.git

Download Hex dependencies and compile everything:

mix deps.get
mix compile

Install Javascript dependencies

Install all NPM packages required by Webpack to generate Web assets:

npm install --prefix apps/gitgud_web/assets

Generate SSH public keys

In order to provide SSH as a Git transport protocol, you must generate a valid SSH public key for the server:

ssh-keygen -m PEM -t rsa -f apps/gitgud/priv/ssh-keys/ssh_host_rsa_key

Setup database

The last step before running the server is to create and initialise the SQL database:

mix ecto.setup

Run server

Finally, start both HTTP (port 4000) and SSH (port 8989) endpoints:

mix phx.server

Illustration by @ahruygt

About

A Git source code management tool powered by Elixir with easy installation & high extensibility.

Topics

Resources

License

Stars

Watchers

Forks

Sponsor this project

 

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •