README.md 5.43 KB
Newer Older
1
## GitLab: self hosted Git management software
Dmytro Zaporozhets's avatar
Dmytro Zaporozhets committed
2

3
![logo](https://gitlab.com/gitlab-org/gitlab-ce/raw/master/public/gitlab_logo.png)
Dmytro Zaporozhets's avatar
Dmytro Zaporozhets committed
4

5
![animated-screenshots](https://gist.github.com/fnkr/2f9badd56bfe0ed04ee7/raw/4f48806fbae97f556c2f78d8c2d299c04500cb0d/compiled.gif)
Sytse Sijbrandij's avatar
Sytse Sijbrandij committed
6

Sid Sijbrandij's avatar
Sid Sijbrandij committed
7 8 9 10 11
### Gitlab is open source software to collaborate on code

* Manage git repositories with fine grained access controls that keep your code secure
* Perform code reviews and enhance collaboration with merge requests
* Each project can also have an issue tracker and a wiki
12
* Used by more than 100,000 organizations, GitLab is the most popular solution to manage git repositories on-premises
Sid Sijbrandij's avatar
Sid Sijbrandij committed
13 14
* Completely free and open source (MIT Expat license)
* Powered by Ruby on Rails
Dmytro Zaporozhets's avatar
Dmytro Zaporozhets committed
15

16 17
### Canonical source

18
* The source of GitLab Community Edition is [hosted on GitLab.com](https://gitlab.com/gitlab-org/gitlab-ce/) and there are mirrors to make [contributing](CONTRIBUTING.md) as easy as possible.
19

20
### Code status
Nihad Abbasov's avatar
Nihad Abbasov committed
21

22
* [![build status](https://ci.gitlab.org/projects/1/status.png?ref=master)](https://ci.gitlab.org/projects/1?ref=master) on ci.gitlab.org (master branch)
Nihad Abbasov's avatar
Nihad Abbasov committed
23

Un1matr1x's avatar
Un1matr1x committed
24
* [![Code Climate](https://codeclimate.com/github/gitlabhq/gitlabhq.png)](https://codeclimate.com/github/gitlabhq/gitlabhq)
25

26 27
* [![Coverage Status](https://coveralls.io/repos/gitlabhq/gitlabhq/badge.png?branch=master)](https://coveralls.io/r/gitlabhq/gitlabhq)

Sid Sijbrandij's avatar
Sid Sijbrandij committed
28 29
* [![PullReview stats](https://www.pullreview.com/gitlab/gitlab-org/gitlab-ce/badges/master.svg?)](https://www.pullreview.com/gitlab.gitlab.com/gitlab-org/gitlab-ce/reviews/master)

30
### Resources
Nihad Abbasov's avatar
Nihad Abbasov committed
31

32
* [www.gitlab.com](https://www.gitlab.com/) includes information about [subscriptions](https://www.gitlab.com/subscription/), [consultancy](https://www.gitlab.com/consultancy/), the [community](https://www.gitlab.com/community/) and the [hosted GitLab.com](https://www.gitlab.com/gitlab-com/).
33

34
* [GitLab Enterprise Edition](https://www.gitlab.com/gitlab-ee/) offers additional features aimed at larger organizations.
35

36
* [GitLab CI](https://www.gitlab.com/gitlab-ci/) is a continuous integration (CI) server that is easy to integrate with GitLab.
Nihad Abbasov's avatar
Nihad Abbasov committed
37

38
* Unofficial third-party [iPhone app](http://gitlabcontrol.com/), [Android app](https://play.google.com/store/apps/details?id=com.bd.gitlab&hl=en), [command line client](https://github.com/drewblessing/gitlab-cli), [Ruby API wrapper](https://github.com/NARKOZ/gitlab) and [Chrome app](https://chrome.google.com/webstore/detail/chrome-gitlab-notifier/eageapgbnjicdjjihgclpclilenjbobi) for GitLab.
Sid Sijbrandij's avatar
Sid Sijbrandij committed
39

Dmytro Zaporozhets's avatar
Dmytro Zaporozhets committed
40
### Requirements
Nihad Abbasov's avatar
Nihad Abbasov committed
41

42
* Ubuntu/Debian/CentOS/RHEL**
43
* ruby 2.0+
44 45
* git 1.7.10+
* redis 2.0+
Frank's avatar
Frank committed
46
* MySQL or PostgreSQL
Nihad Abbasov's avatar
Nihad Abbasov committed
47

48
** More details are in the [requirements doc](doc/install/requirements.md)
49

50 51
### Installation

Sid Sijbrandij's avatar
Sid Sijbrandij committed
52
Please see [the installation page on the GitLab website](https://www.gitlab.com/installation/).
53

54
### New versions
55

56
Since 2011 a minor or major version of GitLab is released on the 22nd of every month. Patch and security releases come out when needed.  New features are detailed on the [blog](https://www.gitlab.com/blog/) and in the [changelog](CHANGELOG). For more information about the release process see the release [documentation](https://gitlab.com/gitlab-org/gitlab-ce/tree/master/doc/release). Features that will likely be in the next releases can be found on the [feature request forum](http://feedback.gitlab.com/forums/176466-general) with the status [started](http://feedback.gitlab.com/forums/176466-general/status/796456) and [completed](http://feedback.gitlab.com/forums/176466-general/status/796457).
57

58
### Upgrading
59

60
For updating the the Omnibus installation please see the [update documentation](https://gitlab.com/gitlab-org/omnibus-gitlab/blob/master/doc/update.md). For manual installations there is an [upgrader script](doc/update/upgrader.md) and there are [upgrade guides](doc/update).
61

62
### Run in production mode
63

64
The Installation guide contains instructions on how to download an init script and run it automatically on boot. You can also start the init script manually:
65

66
    sudo service gitlab start
67

68
or by directly calling the script
69

70
     sudo /etc/init.d/gitlab start
71

Sid Sijbrandij's avatar
Sid Sijbrandij committed
72 73
Please login with root / 5iveL!fe

74
### Install a development environment
Sid Sijbrandij's avatar
Sid Sijbrandij committed
75

76 77
We recommend setting up your development environment with [the cookbook](https://gitlab.com/gitlab-org/cookbook-gitlab/blob/master/README.md#installation).
If you do not use the cookbook you might need to copy the example development unicorn configuration file
Marin Jankovski's avatar
Marin Jankovski committed
78 79 80

    cp config/unicorn.rb.example.development config/unicorn.rb

81 82
### Run in development mode

83
Start it with [Foreman](https://github.com/ddollar/foreman)
84

85
    bundle exec foreman start -p 3000
86

87
or start each component separately
88

89
    bundle exec rails s
90
    bin/background_jobs start
91

Sid Sijbrandij's avatar
Sid Sijbrandij committed
92 93
And surf to [localhost:3000](http://localhost:3000/) and login with root / 5iveL!fe

94
### Run the tests
95 96

* Run all tests
97

98
        bundle exec rake test
99

100
* [RSpec](http://rspec.info/) unit and functional tests
101

102 103 104
        All RSpec tests: bundle exec rake spec

        Single RSpec file: bundle exec rspec spec/controllers/commit_controller_spec.rb
105

106
* [Spinach](https://github.com/codegram/spinach) integration tests
107

108 109 110
        All Spinach tests: bundle exec rake spinach

        Single Spinach test: bundle exec spinach features/project/issues/milestones.feature
111 112


113
### Documentation
114

115
All documentation can be found on [doc.gitlab.com/ce/](http://doc.gitlab.com/ce/).
116

117
### Getting help
118

Sid Sijbrandij's avatar
Sid Sijbrandij committed
119
Please see [Getting help for GitLab](https://www.gitlab.com/getting-help/) on our website for the many options to get help.