Code Monkey home page Code Monkey logo

gitlist's Introduction

GitList: an elegant git repository viewer

Build Status

GitList is an elegant and modern web interface for interacting with multiple git repositories. It allows you to browse repositories using your favorite browser, viewing files under different revisions, commit history, diffs. It also generates RSS feeds for each repository, allowing you to stay up-to-date with the latest changes anytime, anywhere. GitList was written in PHP, on top of the Silex microframework and powered by the Twig template engine. This means that GitList is easy to install and easy to customize. Also, the GitList gorgeous interface was made possible due to Bootstrap.

Features

  • Multiple repository support
  • Multiple branch support
  • Multiple tag support
  • Commit history, blame, diff
  • RSS feeds
  • Syntax highlighting
  • Repository statistics

Screenshots

GitList Screenshot GitList Screenshot GitList Screenshot GitList Screenshot GitList Screenshot

You can also see a live demo here.

Requirements

In order to run GitList on your server, you'll need:

  • git
  • Apache with mod_rewrite enabled or nginx
  • PHP 5.3.3

Installation

  • Download GitList from gitlist.org and decompress to your /var/www/gitlist folder, or anywhere else you want to place GitList.
  • Do not download a branch or tag from GitHub, unless you want to use the development version. The version available for download at the website already has all dependencies bundled, so you don't have to use composer or any other tool
  • Rename the config.ini-example file to config.ini.
  • Open up the config.ini and configure your installation. You'll have to provide where your repositories are located.
  • In case GitList isn't accessed through the root of the website, open .htaccess and edit RewriteBase (for example, /gitlist/ if GitList is accessed through http://localhost/gitlist/).
  • Create the cache folder and give read/write permissions to your web server user:
cd /var/www/gitlist
mkdir cache
chmod 777 cache

That's it, installation complete! If you're having problems, check the Troubleshooting page.

Authors and contributors

License

New BSD license

Todo

  • improve the current test code coverage
  • test the interface
  • submodule support
  • multilanguage support

Development

GitList uses Composer to manage dependencies and Ant to build the project. In order to run all the targets in the build script, you will need PHPUnit, phpcpd, phploc, PHPMD and PHP_Depend.

Once you have all the dependencies set, you can clone the repository and run Ant:

git clone https://github.com/klaussilveira/gitlist.git
ant

If you just want to get the project dependencies, instead of building everything:

git clone https://github.com/klaussilveira/gitlist.git
curl -s http://getcomposer.org/installer | php
php composer.phar install

If you have Composer in your path, things get easier. But you know the drill.

Contributing

If you are a developer, we need your help. GitList is a young project and we have lots of stuff to do. Some developers are contributing with new features, others with bug fixes. But you can also dedicate yourself to refactoring the current codebase and improving what we already have. This is very important, we want GitList to be a state-of-the-art application, and we need your help for that.

  • Stay tuned to possible bugs, suboptimal code, duplicated code, overcomplicated expressions and unused code with PHPMD in our CI server
  • Try to fix any violations reported
  • Improve the test coverage by creating unit and functional tests

Further information

If you want to know more about customizing GitList, check the Customization page on the wiki. Also, if you're having problems with GitList, check the Troubleshooting page. Don't forget to report issues and suggest new features! :)

gitlist's People

Contributors

attiks avatar bggo avatar bjoernffm avatar cschorn avatar damndam avatar danielgtaylor avatar fabpot avatar fauxpark avatar fredlawl avatar garygreen avatar gromnan avatar jblond avatar keelerm84 avatar khornberg avatar klaussilveira avatar krissik avatar kulbirsaini avatar lukx avatar ma-si avatar mikedld avatar mprochowski avatar nateeag avatar ra-dim avatar simonharris avatar skwashd avatar sstok avatar syntaxcacao avatar tobya avatar vognev avatar wimrijnders avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.