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

## Self hosted Git management software
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets committed
4

5
![logo](https://gitlab.com/gitlab-org/gitlab-ce/raw/master/public/gitlab_logo.png)
Dmitriy Zaporozhets's avatar
Dmitriy 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
dosire's avatar
dosire 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
Dmitriy Zaporozhets's avatar
Dmitriy 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)
dosire's avatar
dosire 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.
dosire's avatar
dosire 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

dosire's avatar
dosire 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`.
dosire's avatar
dosire committed
75

76
### Install a development environment
dosire's avatar
dosire 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`.
dosire's avatar
dosire 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

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

117
## Getting help
118

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