README.md 5.91 KB
Newer Older
1
# ![logo](https://about.gitlab.com/images/gitlab_logo.png) GitLab
2

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

5
![Animated screenshots](https://about.gitlab.com/images/animated/compiled.gif)
Sytse Sijbrandij's avatar
Sytse Sijbrandij committed
6

7
8
9
10
11
12
- 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
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
13

14
## Canonical source
15

16
- 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.
17

18
## Code status
Nihad Abbasov's avatar
Nihad Abbasov committed
19

20
- [![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
21

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
22
23
- [![Build Status](https://semaphoreapp.com/api/v1/projects/2f1a5809-418b-4cc2-a1f4-819607579fe7/243338/badge.png)](https://semaphoreapp.com/gitlabhq/gitlabhq)

24
- [![Code Climate](https://codeclimate.com/github/gitlabhq/gitlabhq.svg)](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)
dosire's avatar
dosire committed
29

Sytse Sijbrandij's avatar
Sytse Sijbrandij committed
30
31
## Website

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

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

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

Sytse Sijbrandij's avatar
Sytse 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

Sytse Sijbrandij's avatar
Sytse 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)
dosire's avatar
dosire 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

64
Please see [the installation page on the GitLab website](https://about.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://about.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`
dosire's avatar
dosire committed
85

86
## Install a development environment
dosire's avatar
dosire committed
87

88
89
We recommend setting up your development environment with [the GitLab Development Kit](https://gitlab.com/gitlab-org/gitlab-development-kit).
If you do not use the development kit you might need to copy the example development unicorn configuration file
Marin Jankovski's avatar
Marin Jankovski committed
90
91
92

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

93
## Run in development mode
94

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

97
    bundle exec foreman start -p 3000
98

99
or start each component separately:
100

101
    bundle exec rails s
102
    bin/background_jobs start
103

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

106
## Run the tests
107

108
-   Run all tests:
109

110
        bundle exec rake test
111

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

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

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

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

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

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

124
## Documentation
125

dosire's avatar
dosire committed
126
All documentation can be found on [doc.gitlab.com/ce/](http://doc.gitlab.com/ce/).
127

128
## Getting help
129

130
Please see [Getting help for GitLab](https://about.gitlab.com/getting-help/) on our website for the many options to get help.
131
132
133
134
135
136
137
138
139

## Is it any good?

[Yes](https://news.ycombinator.com/item?id=3067434)

## Is it awesome?

Thanks for [asking this question](https://twitter.com/supersloth/status/489462789384056832) Joshua.
[These people](https://twitter.com/gitlabhq/favorites) seem to like it.