Project management and code hosting application. Follow us on twitter @gitlabhq
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Dmitriy Zaporozhets 7af16bbb0f Merge branch 'advanced-notes' of /home/git/repositories/gitlab/gitlabhq 10 years ago
app reset st_commits before setting new value to prevent error when old st_commits is broken 10 years ago
config Merge pull request #3396 from Andrew8xx8/issue-button-fix 10 years ago
db notification level for user 10 years ago
doc Adding special cases to the advanced setup notes. 10 years ago
features fix tabs features 10 years ago
lib Dont init repo on every create(:repo) 10 years ago
log init commit 12 years ago
public Add logo to deploy.html 10 years ago
script Fix sidekiq chech and added script/check 10 years ago
spec fix test 10 years ago
tmp Add tmp/.gitkeep file to ensure tmp folder exists on clone 11 years ago
vendor Result of misspellings run. 10 years ago
.foreman complete hooks for post receive 11 years ago
.gitignore Merge pull request #2990 from raphendyr/gitignore_and_logrotate 10 years ago
.rspec Spork support added 10 years ago
.simplecov organize simplecov 10 years ago
.travis.yml Update ruby to latest version. 10 years ago
CHANGELOG Update changelog 10 years ago Improve header and wording. 10 years ago
Capfile.example Capistrano deployment example scripts 10 years ago
Gemfile use rollbacked version of grit to make gollum works 10 years ago
Gemfile.lock Fix therubyracer dependencies 10 years ago
Guardfile APi for commits. Better api docs 11 years ago
LICENSE init commit 12 years ago
Procfile Fix procfile and attachment in event nore 10 years ago Removing duplication by putting everything in the readme. Allow us to close issues that deviate from the guidelines. 10 years ago spelling error 10 years ago
Rakefile init commit 12 years ago
VERSION Updated changelog with transfer & security changes 10 years ago added RAILS_RELATIVE_URL_ROOT support 10 years ago

GitLab: self hosted Git management software


GitLab allows you to

  • keep your code secure on your own server
  • manage repositories, users and access permissions
  • communicate through issues, line-comments and wiki pages
  • perform code review with merge requests

GitLab is

  • powered by Ruby on Rails
  • completely free and open source (MIT license)
  • used by more than 10.000 organizations to keep their code secure

Code status

  • build status (master branch)

  • build status (master branch)

  • Code Climate

  • Dependency Status

  • Coverage Status



  • Ubuntu/Debian**
  • ruby 1.9.3
  • MySQL
  • git
  • gitlab-shell
  • redis

** More details are in the requirements doc


Official production installation

Follow the installation guide for production server.

Official development installation

If you want to contribute, please first read our Contributing Guidelines and then we suggest you to use the Vagrant virtual machine project to get an environment working with all dependencies.

Unsupported production installation

New versions and upgrading

Each month on the 22th a new version is released together with an upgrade guide.

Getting started

  1. The Installation guide contains instructions to download an init script and run that on boot. With the init script you can also start GitLab

     sudo service gitlab start


    sudo /etc/init.d/gitlab restart
  1. Start it with Foreman in development mode

     bundle exec foreman start -p 3000

or start it manually

    bundle exec rails s
    bundle exec rake sidekiq:start

Running the tests

  • Seed the database

      bundle exec rake db:setup RAILS_ENV=test
      bundle exec rake db:seed_fu RAILS_ENV=test
  • Run all tests

      bundle exec rake gitlab:test
  • Rspec unit and functional tests

      bundle exec rake spec
  • Spinach integration tests

      bundle exec rake spinach

GitLab interfaces

Getting help

  • Troubleshooting guide contains solutions to common problems.

  • Support forum is the best place to ask questions. For example you can use it if you have questions about: permission denied errors, invisible repos, can't clone/pull/push or with web hooks that don't fire. Please search for similar issues before posting your own, there's a good chance somebody else had the same issue you have now and had it resolved. There are a lot of helpful GitLab users there who may be able to help you quickly. If your particular issue turns out to be a bug, it will find its way from there to a fix.

  • Feedback and suggestions forum is the place to propose and discuss new features for GitLab.

  • Support subscription connect you to the knowledge of GitLab experts that will resolve your issues and answer your questions.

  • Consultancy allows you hire GitLab exports for installations, upgrades and customizations.

  • Contributing guide describes how to submit pull requests and issues. Pull requests and issues not in line with the guidelines in this document will be closed without comment.

Getting in touch