README.md 5.56 KB
Newer Older
1 2
# GitLab

Sid Sijbrandij's avatar
Sid Sijbrandij committed
3
## Open source software to collaborate on code
Dmytro Zaporozhets's avatar
Dmytro Zaporozhets committed
4

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

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

9 10 11 12 13 14
- 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
- Used by more than 100,000 organizations, GitLab is the most popular solution to manage Git repositories on-premises
- Completely free and open source (MIT Expat license)
- Powered by Ruby on Rails
Dmytro Zaporozhets's avatar
Dmytro Zaporozhets committed
15

16
## Canonical source
17

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

24
- [![Code Climate](https://codeclimate.com/github/gitlabhq/gitlabhq.png)](https://codeclimate.com/github/gitlabhq/gitlabhq)
25

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

28
- [![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)
Sid Sijbrandij's avatar
Sid Sijbrandij committed
29

Sid Sijbrandij's avatar
Sid Sijbrandij committed
30 31 32
## Website

On [www.gitlab.com](https://www.gitlab.com/) you can find more information about:
Nihad Abbasov's avatar
Nihad Abbasov committed
33

Sid Sijbrandij's avatar
Sid Sijbrandij committed
34 35 36 37 38 39
- [Subscriptions](https://www.gitlab.com/subscription/)
- [Consultancy](https://www.gitlab.com/consultancy/)
- [Community](https://www.gitlab.com/community/)
- [Hosted GitLab.com](https://www.gitlab.com/gitlab-com/) use GitLab as a free service
- [GitLab Enterprise Edition](https://www.gitlab.com/gitlab-ee/) with additional features aimed at larger organizations.
- [GitLab CI](https://www.gitlab.com/gitlab-ci/) a continuous integration (CI) server that is easy to integrate with GitLab.
40

Sid Sijbrandij's avatar
Sid Sijbrandij committed
41
## Third-party applications
42

Sid Sijbrandij's avatar
Sid Sijbrandij committed
43 44
Access GitLab from multiple platforms with applications below.
These applications are maintained by contributors, GitLab B.V. does not offer support for them.
Nihad Abbasov's avatar
Nihad Abbasov committed
45

Sid Sijbrandij's avatar
Sid Sijbrandij committed
46 47 48 49 50
- [iPhone app](http://gitlabcontrol.com/)
- [Android app](https://play.google.com/store/apps/details?id=com.bd.gitlab&hl=en)
- [Chrome app](https://chrome.google.com/webstore/detail/chrome-gitlab-notifier/eageapgbnjicdjjihgclpclilenjbobi)
- [Command line client](https://github.com/drewblessing/gitlab-cli)
- [Ruby API wrapper](https://github.com/NARKOZ/gitlab)
Sid Sijbrandij's avatar
Sid Sijbrandij committed
51

52
## Requirements
Nihad Abbasov's avatar
Nihad Abbasov committed
53

54 55 56 57 58
- Ubuntu/Debian/CentOS/RHEL**
- ruby 2.0+
- git 1.7.10+
- redis 2.0+
- MySQL or PostgreSQL
Nihad Abbasov's avatar
Nihad Abbasov committed
59

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

62
## Installation
63

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

66
### New versions
67

68
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).
69

70
### Upgrading
71

72
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).
73

74
## Run in production mode
75

76
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:
77

78
    sudo service gitlab start
79

80
or by directly calling the script:
81

82
     sudo /etc/init.d/gitlab start
83

84
Please login with `root` / `5iveL!fe`.
Sid Sijbrandij's avatar
Sid Sijbrandij committed
85

86
## Install a development environment
Sid Sijbrandij's avatar
Sid Sijbrandij committed
87

88
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
89 90 91

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

92
## Run in development mode
93

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

96
    bundle exec foreman start -p 3000
97

98
or start each component separately:
99

100
    bundle exec rails s
101
    bin/background_jobs start
102

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

105
## Run the tests
106

107
-   Run all tests:
108

109
        bundle exec rake test
110

111
-   [RSpec](http://rspec.info/) unit and functional tests.
112

113
    All RSpec tests: `bundle exec rake spec`
114

115
    Single RSpec file: `bundle exec rspec spec/controllers/commit_controller_spec.rb`
116

117
-   [Spinach](https://github.com/codegram/spinach) integration tests.
118

119
    All Spinach tests: `bundle exec rake spinach`
120

121
    Single Spinach test: `bundle exec spinach features/project/issues/milestones.feature`
122

123
## Documentation
124

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

127
## Getting help
128

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