Commit ad3a88cfd34aeed5ed69b4056e393580a686fb09

Authored by randx
1 parent 1f5e2658

Prepared for gitolite v3

app/models/merge_request.rb
... ... @@ -162,7 +162,7 @@ class MergeRequest < ActiveRecord::Base
162 162 end
163 163  
164 164 def automerge!(current_user)
165   - if Gitlab::Merge.new(self, current_user).merge
  165 + if Gitlab::Merge.new(self, current_user).merge && self.unmerged_commits.empty?
166 166 self.merge!(current_user.id)
167 167 true
168 168 end
... ...
app/roles/push_event.rb
... ... @@ -90,6 +90,8 @@ module PushEvent
90 90  
91 91 def push_with_commits?
92 92 md_ref? && commits.any? && parent_commit && last_commit
  93 + rescue Grit::NoSuchPathError
  94 + false
93 95 end
94 96  
95 97 def last_push_to_non_root?
... ...
config/gitlab.yml.example
... ... @@ -33,11 +33,11 @@ app:
33 33 git_host:
34 34 admin_uri: git@localhost:gitolite-admin
35 35 base_path: /home/git/repositories/
36   - # hooks_path: /var/lib/gitolite/.gitolite/hooks/ # only needed when gitolite is not installed according the manual
37   - # host: localhost
  36 + hooks_path: /home/git/.gitolite/hooks/
38 37 git_user: git
39 38 upload_pack: true
40 39 receive_pack: true
  40 + # host: localhost
41 41 # port: 22
42 42  
43 43 # Git settings
... ...
doc/installation.md
... ... @@ -113,17 +113,20 @@ Generate key:
113 113 Clone GitLab's fork of the Gitolite source code:
114 114  
115 115 cd /home/git
116   - sudo -H -u git git clone https://github.com/gitlabhq/gitolite.git /home/git/gitolite
  116 + sudo -H -u git git clone -b gl-v304 https://github.com/gitlabhq/gitolite.git /home/git/gitolite
117 117  
118 118 Setup:
119 119  
  120 + cd /home/git
  121 + sudo -u git -H mkdir bin
120 122 sudo -u git sh -c 'echo -e "PATH=\$PATH:/home/git/bin\nexport PATH" >> /home/git/.profile'
121   - sudo -u git -H sh -c "PATH=/home/git/bin:$PATH; /home/git/gitolite/src/gl-system-install"
  123 + sudo -u git sh -c 'gitolite/install -ln /home/git/bin'
  124 +
122 125 sudo cp /home/gitlab/.ssh/id_rsa.pub /home/git/gitlab.pub
123 126 sudo chmod 0444 /home/git/gitlab.pub
124 127  
125   - sudo -u git -H sed -i 's/0077/0007/g' /home/git/share/gitolite/conf/example.gitolite.rc
126   - sudo -u git -H sh -c "PATH=/home/git/bin:$PATH; gl-setup -q /home/git/gitlab.pub"
  128 + sudo -u git -H sh -c "PATH=/home/git/bin:$PATH; gitolite setup -pk /home/git/gitlab.pub"
  129 + sudo -u git -H sed -i 's/0077/0007/g' /home/git/.gitolite.rc
127 130  
128 131 Permissions:
129 132  
... ... @@ -189,8 +192,8 @@ and ensure you have followed all of the above steps carefully.
189 192  
190 193 #### Setup GitLab hooks
191 194  
192   - sudo cp ./lib/hooks/post-receive /home/git/share/gitolite/hooks/common/post-receive
193   - sudo chown git:git /home/git/share/gitolite/hooks/common/post-receive
  195 + sudo cp ./lib/hooks/post-receive /home/git/.gitolite/hooks/common/post-receive
  196 + sudo chown git:git /home/git/.gitolite/hooks/common/post-receive
194 197  
195 198 #### Check application status
196 199  
... ...
lib/gitlab/merge.rb
... ... @@ -21,8 +21,7 @@ module Gitlab
21 21 if output =~ /CONFLICT/
22 22 false
23 23 else
24   - repo.git.push({}, "origin", merge_request.target_branch)
25   - true
  24 + !!repo.git.push({}, "origin", merge_request.target_branch)
26 25 end
27 26 end
28 27 end
... ...