README.md 5.42 KB
Newer Older
1 2 3
# GitLab

## Self hosted Git management software
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
## Open source software to collaborate on code
Sid Sijbrandij's avatar
Sid Sijbrandij committed
10

11 12 13 14 15 16
- 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
17

18
## Canonical source
19

20
- 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.
21

22
## Code status
Nihad Abbasov's avatar
Nihad Abbasov committed
23

24
- [![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
25

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

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

30
- [![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
31

32
### Resources
Nihad Abbasov's avatar
Nihad Abbasov committed
33

34
- [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/).
35

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

38
- [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
39

40
- 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
41

42
## Requirements
Nihad Abbasov's avatar
Nihad Abbasov committed
43

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

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

52
## Installation
53

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

56
### New versions
57

58
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).
59

60
### Upgrading
61

62
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).
63

64
## Run in production mode
65

66
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:
67

68
    sudo service gitlab start
69

70
or by directly calling the script:
71

72
     sudo /etc/init.d/gitlab start
73

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

76
### Install a development environment
Sid Sijbrandij's avatar
Sid Sijbrandij committed
77

78
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
79 80 81

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

82 83
### Run in development mode

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

86
    bundle exec foreman start -p 3000
87

88
or start each component separately:
89

90
    bundle exec rails s
91
    bin/background_jobs start
92

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

95
## Run the tests
96

97
-   Run all tests:
98

99
        bundle exec rake test
100

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

103
    All RSpec tests: `bundle exec rake spec`
104

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

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

109
    All Spinach tests: `bundle exec rake spinach`
110

111
    Single Spinach test: `bundle exec spinach features/project/issues/milestones.feature`
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.