installation.md 9,4 КБ
Newer Older
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
1
## Platform requirements:
Valery Sizov's avatar
Valery Sizov включено в состав коммита
2

Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
3
**The project is designed for the Linux operating system.**
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
4
5
6

It may work on FreeBSD and Mac OS, but we don't test our application for these systems and can't guarantee stability and full functionality.

Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
7
We officially support (recent versions of) these Linux distributions:
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
8

Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
9
10
- Ubuntu Linux
- Debian/GNU Linux
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
11
12
13
14
15

It should work on:

- Fedora
- CentOs
Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
16
- RedHat
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
17

Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
18
You might have some luck using these, but no guarantees:
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
19

Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
20
 - MacOS X
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
21
22
 - FreeBSD

Robert Speicher's avatar
Robert Speicher включено в состав коммита
23
GitLab does **not** run on Windows and we have no plans of making GitLab compatible.
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
24

Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
25
## This installation guide created for Debian/Ubuntu and properly tested.
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
26
27

The installation consists of 6 steps:
Valery Sizov's avatar
Valery Sizov включено в состав коммита
28

Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
29
30
1. Install packages / dependencies
2. Install ruby
Robert Speicher's avatar
Robert Speicher включено в состав коммита
31
32
3. Install Gitolite
4. Install and configure GitLab.
Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
33
34
35
36
37
5. Start the web front-end
6. Start a Resque worker (for background processing)

### IMPORTANT

Robert Speicher's avatar
Robert Speicher включено в состав коммита
38
Please make sure you have followed all the steps below before posting to the mailing list with installation and configuration questions.
Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
39

Robert Speicher's avatar
Robert Speicher включено в состав коммита
40
Only create a GitHub Issue if you want a specific part of this installation guide updated.
Valery Sizov's avatar
Valery Sizov включено в состав коммита
41

Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
42
Also read the [Read this before you submit an issue](https://github.com/gitlabhq/gitlabhq/wiki/Read-this-before-you-submit-an-issue) wiki page.
Valery Sizov's avatar
Valery Sizov включено в состав коммита
43

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
44
> - - -
Robert Speicher's avatar
Robert Speicher включено в состав коммита
45
> The first 3 steps of this guide can be easily skipped by executing an install script:
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
46
47
>
>     # Install curl and sudo
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
48
>     apt-get install curl sudo
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
49
>
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
50
>     # 3 steps in 1 command :)
randx's avatar
randx включено в состав коммита
51
>     curl https://raw.github.com/gitlabhq/gitlab-recipes/master/install/debian_ubuntu.sh | sh
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
52
>
Robert Speicher's avatar
Robert Speicher включено в состав коммита
53
> Now you can go to [Step 4](#4-install-gitlab-and-configuration-check-status-configuration)
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
54
>
Robert Speicher's avatar
Robert Speicher включено в состав коммита
55
> Or if you are installing on Amazon Web Services using Ubuntu 12.04 you can do all steps (1 to 6) at once with:
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
56
>
randx's avatar
randx включено в состав коммита
57
>     curl https://raw.github.com/gitlabhq/gitlab-recipes/master/install/debian_ubuntu_aws.sh | sh
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
58
>
randx's avatar
randx включено в состав коммита
59
> for more detailed instructions read the HOWTO section of [the script](https://github.com/gitlabhq/gitlab-recipes/blob/master/install/debian_ubuntu_aws.sh)
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
60
> - - -
Valery Sizov's avatar
Valery Sizov включено в состав коммита
61
62
63

# 1. Install packages

Robert Speicher's avatar
Robert Speicher включено в состав коммита
64
65
66
67
68
*Keep in mind that `sudo` is not installed on Debian by default. You should install it as root:*

    apt-get update && apt-get upgrade && apt-get install sudo

Now install the required packages:
Valery Sizov's avatar
Valery Sizov включено в состав коммита
69
70
71
72

    sudo apt-get update
    sudo apt-get upgrade

three18ti's avatar
three18ti включено в состав коммита
73
    sudo apt-get install -y wget curl gcc checkinstall libxml2-dev libxslt-dev sqlite3 libsqlite3-dev libcurl4-openssl-dev libreadline6-dev libc6-dev libssl-dev libmysql++-dev make build-essential zlib1g-dev libicu-dev redis-server openssh-server git-core python-dev python-pip libyaml-dev postfix
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
74

Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
75
76
    # If you want to use MySQL:
    sudo apt-get install -y mysql-server mysql-client libmysqlclient-dev
Valery Sizov's avatar
Valery Sizov включено в состав коммита
77

Robert Speicher's avatar
Robert Speicher включено в состав коммита
78
# 2. Install Ruby
Valery Sizov's avatar
Valery Sizov включено в состав коммита
79

randx's avatar
randx включено в состав коммита
80
81
82
    wget http://ftp.ruby-lang.org/pub/ruby/1.9/ruby-1.9.3-p194.tar.gz
    tar xfvz ruby-1.9.3-p194.tar.gz
    cd ruby-1.9.3-p194
Valery Sizov's avatar
Valery Sizov включено в состав коммита
83
84
85
86
    ./configure
    make
    sudo make install

Robert Speicher's avatar
Robert Speicher включено в состав коммита
87
# 3. Install Gitolite
Valery Sizov's avatar
Valery Sizov включено в состав коммита
88
89

Create user for git:
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
90

Valery Sizov's avatar
Valery Sizov включено в состав коммита
91
92
93
94
95
96
97
98
99
    sudo adduser \
      --system \
      --shell /bin/sh \
      --gecos 'git version control' \
      --group \
      --disabled-password \
      --home /home/git \
      git

Robert Speicher's avatar
Robert Speicher включено в состав коммита
100
Create user for GitLab:
sylis's avatar
sylis включено в состав коммита
101

Valery Sizov's avatar
Valery Sizov включено в состав коммита
102
    # ubuntu/debian
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
103
    sudo adduser --disabled-login --gecos 'gitlab system' gitlab
Valery Sizov's avatar
Valery Sizov включено в состав коммита
104

Robert Speicher's avatar
Robert Speicher включено в состав коммита
105
Add your user to the `git` group:
sylis's avatar
sylis включено в состав коммита
106

Valery Sizov's avatar
Valery Sizov включено в состав коммита
107
108
109
    sudo usermod -a -G git gitlab

Generate key:
sylis's avatar
sylis включено в состав коммита
110

Valery Sizov's avatar
Valery Sizov включено в состав коммита
111
112
    sudo -H -u gitlab ssh-keygen -q -N '' -t rsa -f /home/gitlab/.ssh/id_rsa

Robert Speicher's avatar
Robert Speicher включено в состав коммита
113
Clone GitLab's fork of the Gitolite source code:
sylis's avatar
sylis включено в состав коммита
114

randx's avatar
randx включено в состав коммита
115
    sudo -H -u git git clone -b gl-v304 https://github.com/gitlabhq/gitolite.git /home/git/gitolite
Valery Sizov's avatar
Valery Sizov включено в состав коммита
116
117

Setup:
sylis's avatar
sylis включено в состав коммита
118

randx's avatar
randx включено в состав коммита
119
120
    cd /home/git
    sudo -u git -H mkdir bin
Daniel Thomas's avatar
Daniel Thomas включено в состав коммита
121
    sudo -u git sh -c 'echo -e "PATH=\$PATH:/home/git/bin\nexport PATH" >> /home/git/.profile'
randx's avatar
randx включено в состав коммита
122
123
    sudo -u git sh -c 'gitolite/install -ln /home/git/bin'

Valery Sizov's avatar
Valery Sizov включено в состав коммита
124
    sudo cp /home/gitlab/.ssh/id_rsa.pub /home/git/gitlab.pub
Al Tobey's avatar
Al Tobey включено в состав коммита
125
    sudo chmod 0444 /home/git/gitlab.pub
Valery Sizov's avatar
Valery Sizov включено в состав коммита
126

randx's avatar
randx включено в состав коммита
127
128
    sudo -u git -H sh -c "PATH=/home/git/bin:$PATH; gitolite setup -pk /home/git/gitlab.pub"
    sudo -u git -H sed -i 's/0077/0007/g' /home/git/.gitolite.rc
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
129

Valery Sizov's avatar
Valery Sizov включено в состав коммита
130
Permissions:
sylis's avatar
sylis включено в состав коммита
131

Valery Sizov's avatar
Valery Sizov включено в состав коммита
132
133
134
135
    sudo chmod -R g+rwX /home/git/repositories/
    sudo chown -R git:git /home/git/repositories/

#### CHECK: Logout & login again to apply git group to your user
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
136

Valery Sizov's avatar
Valery Sizov включено в состав коммита
137
138
    # clone admin repo to add localhost to known_hosts
    # & be sure your user has access to gitolite
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
139
    sudo -u gitlab -H git clone git@localhost:gitolite-admin.git /tmp/gitolite-admin
Valery Sizov's avatar
Valery Sizov включено в состав коммита
140
141

    # if succeed  you can remove it
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
142
    sudo rm -rf /tmp/gitolite-admin
Valery Sizov's avatar
Valery Sizov включено в состав коммита
143

Robert Speicher's avatar
Robert Speicher включено в состав коммита
144
145
146
**IMPORTANT! If you can't clone `gitolite-admin` repository - DO NOT PROCEED WITH INSTALLATION**
Check the [Trouble Shooting Guide](https://github.com/gitlabhq/gitlab-public-wiki/wiki/Trouble-Shooting-Guide)
and ensure you have followed all of the above steps carefully.
Valery Sizov's avatar
Valery Sizov включено в состав коммита
147

Robert Speicher's avatar
Robert Speicher включено в состав коммита
148
# 4. Clone GitLab source and install prerequisites
Valery Sizov's avatar
Valery Sizov включено в состав коммита
149

randx's avatar
randx включено в состав коммита
150
    sudo gem install charlock_holmes --version '0.6.8'
Valery Sizov's avatar
Valery Sizov включено в состав коммита
151
152
153
    sudo pip install pygments
    sudo gem install bundler
    cd /home/gitlab
randx's avatar
randx включено в состав коммита
154
155

    # Get gitlab code. Use this for stable setup
Robert Speicher's avatar
Robert Speicher включено в состав коммита
156
    sudo -H -u gitlab git clone -b stable https://github.com/gitlabhq/gitlabhq.git gitlab
randx's avatar
randx включено в состав коммита
157
158
159
160
161

    # Skip this for stable setup.
    # Master branch (recent changes, less stable)
    sudo -H -u gitlab git clone -b master https://github.com/gitlabhq/gitlabhq.git gitlab

Valery Sizov's avatar
Valery Sizov включено в состав коммита
162
    cd gitlab
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
163

Valery Sizov's avatar
Valery Sizov включено в состав коммита
164
165
166
    # Rename config files
    sudo -u gitlab cp config/gitlab.yml.example config/gitlab.yml

Robert Speicher's avatar
Robert Speicher включено в состав коммита
167
#### Select the database you want to use
sylis's avatar
sylis включено в состав коммита
168

Valery Sizov's avatar
Valery Sizov включено в состав коммита
169
170
171
    # SQLite
    sudo -u gitlab cp config/database.yml.sqlite config/database.yml

Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
172
    # Or
Valery Sizov's avatar
Valery Sizov включено в состав коммита
173
    # Mysql
three18ti's avatar
three18ti включено в состав коммита
174
    # Install MySQL as directed in Step #1
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
175

three18ti's avatar
three18ti включено в состав коммита
176
    # Login to MySQL
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
177
178
    $ mysql -u root -p

Alex Denisov's avatar
Alex Denisov включено в состав коммита
179
    # Create the GitLab production database
three18ti's avatar
three18ti включено в состав коммита
180
    mysql> CREATE DATABASE IF NOT EXISTS `gitlabhq_production` DEFAULT CHARACTER SET `utf8` COLLATE `utf8_unicode_ci`;
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
181

three18ti's avatar
three18ti включено в состав коммита
182
    # Create the MySQL User change $password to a real password
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
183
184
    mysql> CREATE USER 'gitlab'@'localhost' IDENTIFIED BY '$password';

three18ti's avatar
three18ti включено в состав коммита
185
186
    # Grant proper permissions to the MySQL User
    mysql> GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, INDEX, ALTER ON `gitlabhq_production`.* TO 'gitlab'@'localhost';
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
187

three18ti's avatar
three18ti включено в состав коммита
188
    # Exit MySQL Server and copy the example config, make sure to update username/password in config/database.yml
Valery Sizov's avatar
Valery Sizov включено в состав коммита
189
190
191
    sudo -u gitlab cp config/database.yml.example config/database.yml

#### Install gems
sylis's avatar
sylis включено в состав коммита
192

Valery Sizov's avatar
Valery Sizov включено в состав коммита
193
194
    sudo -u gitlab -H bundle install --without development test --deployment

Robert Speicher's avatar
Robert Speicher включено в состав коммита
195
#### Setup database
sylis's avatar
sylis включено в состав коммита
196

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
197
    sudo -u gitlab bundle exec rake gitlab:app:setup RAILS_ENV=production
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
198

Robert Speicher's avatar
Robert Speicher включено в состав коммита
199
#### Setup GitLab hooks
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
200

randx's avatar
randx включено в состав коммита
201
202
    sudo cp ./lib/hooks/post-receive /home/git/.gitolite/hooks/common/post-receive
    sudo chown git:git /home/git/.gitolite/hooks/common/post-receive
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
203

Robert Speicher's avatar
Robert Speicher включено в состав коммита
204
205
#### Check application status

Valery Sizov's avatar
Valery Sizov включено в состав коммита
206
Checking status:
sylis's avatar
sylis включено в состав коммита
207

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
208
    sudo -u gitlab bundle exec rake gitlab:app:status RAILS_ENV=production
Valery Sizov's avatar
Valery Sizov включено в состав коммита
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223


    # OUTPUT EXAMPLE
    Starting diagnostic
    config/database.yml............exists
    config/gitlab.yml............exists
    /home/git/repositories/............exists
    /home/git/repositories/ is writable?............YES
    remote: Counting objects: 603, done.
    remote: Compressing objects: 100% (466/466), done.
    remote: Total 603 (delta 174), reused 0 (delta 0)
    Receiving objects: 100% (603/603), 53.29 KiB, done.
    Resolving deltas: 100% (174/174), done.
    Can clone gitolite-admin?............YES
    UMASK for .gitolite.rc is 0007? ............YES
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
224
    /home/git/share/gitolite/hooks/common/post-receive exists? ............YES
Valery Sizov's avatar
Valery Sizov включено в состав коммита
225

Robert Speicher's avatar
Robert Speicher включено в состав коммита
226
If you got all YES - congratulations! You can go to the next step.
Valery Sizov's avatar
Valery Sizov включено в состав коммита
227

Robert Speicher's avatar
Robert Speicher включено в состав коммита
228
# 5. Start the web server
Valery Sizov's avatar
Valery Sizov включено в состав коммита
229

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
230
Application can be started with next command:
sylis's avatar
sylis включено в состав коммита
231

Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
232
    # For test purposes
Valery Sizov's avatar
Valery Sizov включено в состав коммита
233
234
    sudo -u gitlab bundle exec rails s -e production

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
235
236
    # As daemon
    sudo -u gitlab bundle exec rails s -e production -d
Valery Sizov's avatar
Valery Sizov включено в состав коммита
237

randx's avatar
randx включено в состав коммита
238
239
240
241
242
You can login via web using admin generated with setup:

    admin@local.host
    5iveL!fe

Robert Speicher's avatar
Robert Speicher включено в состав коммита
243
#  6. Run Resque process (for processing job queue).
Valery Sizov's avatar
Valery Sizov включено в состав коммита
244
245
246
247

    # Manually
    sudo -u gitlab bundle exec rake environment resque:work QUEUE=* RAILS_ENV=production BACKGROUND=yes

Robert Speicher's avatar
Robert Speicher включено в состав коммита
248
    # GitLab start script
three18ti's avatar
three18ti включено в состав коммита
249
250
251
    sudo -u gitlab ./resque.sh
    # if you run this as root /home/gitlab/gitlab/tmp/pids/resque_worker.pid will be owned by root
    # causing the resque worker not to start via init script on next boot/service restart
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
252

Robert Speicher's avatar
Robert Speicher включено в состав коммита
253
254
255
256
257
258
259
260
## Customizing Resque's Redis connection

If you'd like Resque to connect to a Redis server on a non-standard port or on
a different host, you can configure its connection string in the
**config/resque.yml** file:

    production: redis.example.com:6379

Ariejan de Vroom's avatar
Ariejan de Vroom включено в состав коммита
261
**Ok - we have a working application now. **
logiblocs's avatar
logiblocs включено в состав коммита
262
**But keep going - there are some things that should be done **
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
263

Valery Sizov's avatar
Valery Sizov включено в состав коммита
264
265
# Nginx && Unicorn

randx's avatar
randx включено в состав коммита
266
## 1. Unicorn
sylis's avatar
sylis включено в состав коммита
267

Valery Sizov's avatar
Valery Sizov включено в состав коммита
268
    cd /home/gitlab/gitlab
Tobias Pfeiffer's avatar
Tobias Pfeiffer включено в состав коммита
269
    sudo -u gitlab cp config/unicorn.rb.example config/unicorn.rb
Valeriy Sizov's avatar
Valeriy Sizov включено в состав коммита
270
    sudo -u gitlab bundle exec unicorn_rails -c config/unicorn.rb -E production -D
Valery Sizov's avatar
Valery Sizov включено в состав коммита
271

randx's avatar
randx включено в состав коммита
272
273
274
275
## 2. Nginx

    # Install first
    sudo apt-get install nginx
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
276

randx's avatar
randx включено в состав коммита
277
    # Add GitLab to nginx sites & change with your host specific settings
randx's avatar
randx включено в состав коммита
278
    sudo wget https://raw.github.com/gitlabhq/gitlab-recipes/master/nginx/gitlab -P /etc/nginx/sites-available/
Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
279
    sudo ln -s /etc/nginx/sites-available/gitlab /etc/nginx/sites-enabled/gitlab
Valery Sizov's avatar
Valery Sizov включено в состав коммита
280

Sytse Sijbrandij's avatar
Sytse Sijbrandij включено в состав коммита
281
282
283
284
    # Change **YOUR_SERVER_IP** and **YOUR_SERVER_FQDN**
    # to the IP address and fully-qualified domain name
    # of the host serving GitLab.
    sudo vim /etc/nginx/sites-enabled/gitlab
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
285

randx's avatar
randx включено в состав коммита
286
    # Restart nginx:
Danillo Nunes's avatar
Danillo Nunes включено в состав коммита
287
    sudo /etc/init.d/nginx restart
Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
288

randx's avatar
randx включено в состав коммита
289
290
## 3. Init script

Valery Sizov's avatar
Valery Sizov включено в состав коммита
291
Create init script in /etc/init.d/gitlab:
sylis's avatar
sylis включено в состав коммита
292

randx's avatar
randx включено в состав коммита
293
    sudo wget https://raw.github.com/gitlabhq/gitlab-recipes/master/init.d/gitlab -P /etc/init.d/
Valery Sizov's avatar
Valery Sizov включено в состав коммита
294
295
    sudo chmod +x /etc/init.d/gitlab

Robert Speicher's avatar
Robert Speicher включено в состав коммита
296
GitLab autostart:
sylis's avatar
sylis включено в состав коммита
297

Valeriy Sizov's avatar
Valeriy Sizov включено в состав коммита
298
    sudo update-rc.d gitlab defaults
Valery Sizov's avatar
Valery Sizov включено в состав коммита
299

Robert Speicher's avatar
Robert Speicher включено в состав коммита
300
Now you can start/restart/stop GitLab like:
sylis's avatar
sylis включено в состав коммита
301

Dmitriy Zaporozhets's avatar
Dmitriy Zaporozhets включено в состав коммита
302
    sudo /etc/init.d/gitlab restart