Gitlist logo

Gitlist

  •  0 ratings
In category: Software Development / Project Management

About Gitlist

Web-based git repository browser - GitList allows you to browse repositories using your favorite browser, viewing files under different revisions, commit history and diffs.

  •   471  
  •   0  
  •   0  
  •   0  
Github stats:
  •  Commits: 702  
  •   29,000  
  •   534  
  •  Latest commit: Jul 29, 2022  

Deploy this app to Linode with a free $100 credit!

Languages/Platforms/Technologies:
Lincenses:

More about Gitlist

GitList: an elegant git repository viewer

Build Status GitHub release License Crowdin

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/Atom 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 Symfony framework and powered by the Twig template engine. This means that GitList is easy to install and easy to customize. Also, the GitList interface was made possible due to Bootstrap.

Features

  • Multiple repository support
  • Multiple branch support
  • Multiple tag support
  • Commit history, blame, diff
  • RSS/Atom feeds
  • Syntax highlighting via CodeMirror or Ace
  • Repository statistics

Screenshots

Requirements

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

  • PHP 8.1
  • git 2
  • Webserver (Apache, nginx)

Installation

  • Download the latest release or the nightly build and decompress to your /var/www/gitlist folder, or anywhere else you want to place GitList.
  • Do not use the source release, or download a branch or tag from GitHub. It is not suited for end-users, only development.
  • Open up the config/config.yml and configure your installation. You'll have to provide where your repositories are located.
  • Alternatively, you can export the environment variable DEFAULT_REPOSITORY_DIR with the directory containing your repositories
  • Create the cache and log folder and give it read/write permissions to your web server user:
cd /var/www/gitlist
mkdir -p var/cache
chmod 777 var/cache
mkdir -p var/log
chmod 777 var/log
  • Point your webserver to the /var/www/gitlist/public folder, where index.php is.

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

Development

GitList comes with a Docker Compose configuration intended for development purposes. It contains a PHP image with all necessary extensions, as well as a Node image for frontend assets.

To get started, just clone the repo and run the setup script:

git clone https://github.com/klaussilveira/gitlist.git
make setup

It should take care of letting you know what is missing, if anything. Once finished, run the test suite to make sure everything is in order:

make test
make acceptance

There are other commands available. To learn more:

make help

Contributing

If you are a developer, we need your help. GitList is small, but 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
  • Improve the test coverage by creating unit and functional tests

If you are not a developer, you can also contribute by helping translate GitList.

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! :)

Legacy

GitList was born in May 2012, a time were Composer was still a novelty and Silex was all the rage. We have tried to maintain GitList as-is for as long as possible, but the PHP ecosystem changed so much in all those years that it became too time consuming to maintain it. Thus, 2.0 was born on top of Symfony 6 and we'll keep moving with the times.

Legacy, however, is still available here and we will try to keep it secure and working on newer PHP versions.

Comments (0)

Please login to join the discussion on this project.

Gitlist Reviews (0)

Overall Rating

None

based on 0 ratings

Please login to review this project.

No reviews for this project yet.

↑ back to top

pCloud Lifetime

Popular Projects

FluxBB

in Social Networks and Forums
 33k    0    0    0  

Nextcloud

in File Transfer & Synchronization
 20k    1    1    0  

Libreddit

in Social Networks and Forums
 6k    0    1    0  

CasaOS

in Self-hosting Solutions
 5k    0    0    0  

Audiobookshelf

in Audio Streaming
 5k    0    1    0  

Dashboard

in Personal Dashboards
 5k    0    0    0  

Mediagoblin

in Photo and Video Galleries
 4k    0    0    0  

Most Discussed

Nextcloud

in File Transfer & Synchronization
 20k    1    1    0  

Tube Archivist

in Automation
 3k    0    1    0  

OneDev

in Project Management
 2k    0    0    0  

iodine

in Proxy
 2k    0    0    0  

Alf.io

in Booking and Scheduling
 2k    0    0    0  

sysPass

in Password Managers
 987    0    0    0  

Misskey

in Social Networks and Forums
 2k    0    0    0  
Linux VPS from $11/yr.
RackNerd VPS for $11.38/mo

Top Rated Projects

Gitea

 1 rating
in Project Management

Bagisto

 1 rating
in E-commerce

LinkAce

 1 rating
in Bookmarks and Link Sharing

Pydio

 1 rating
in File Transfer & Synchronization

Audiobookshelf

 1 rating
in Audio Streaming

Nextcloud

 1 rating
in File Transfer & Synchronization

Seafile

 1 rating
in File Transfer & Synchronization

Categories

You May Also Be Interested In

SCM Manager logo
SCM Manager cover

SCM Manager

The easiest way to share and manage your Git, Mercurial and…

GitPrep logo
GitPrep cover

GitPrep

Portable Github clone.

Traq logo
Traq cover

Traq

Project management and issue tracking system written in PHP.