BigW Consortium Gitlab
Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
G
gitlab-ce
Project
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Commits
Issue Boards
Open sidebar
Forest Godfrey
gitlab-ce
Commits
9ea37cda
Unverified
Commit
9ea37cda
authored
Aug 14, 2015
by
Dmitriy Zaporozhets
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
merge with support of pre-receive and post-receive hooks
Signed-off-by:
Dmitriy Zaporozhets
<
dmitriy.zaporozhets@gmail.com
>
parent
f4149bcd
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
12 additions
and
20 deletions
+12
-20
repository.rb
app/models/repository.rb
+10
-8
merge_service.rb
app/services/merge_requests/merge_service.rb
+2
-12
No files found.
app/models/repository.rb
View file @
9ea37cda
...
...
@@ -392,7 +392,7 @@ class Repository
end
def
remove_file
(
user
,
path
,
message
,
branch
)
commit_with_hooks
(
user
,
branch
)
do
|
branch
|
commit_with_hooks
(
user
,
branch
)
do
|
ref
|
path
[
0
]
=
''
if
path
[
0
]
==
'/'
committer
=
user_to_comitter
(
user
)
...
...
@@ -431,7 +431,7 @@ class Repository
end
end
def
merge
(
source_sha
,
target_branch
,
options
=
{})
def
merge
(
user
,
source_sha
,
target_branch
,
options
=
{})
our_commit
=
rugged
.
branches
[
target_branch
].
target
their_commit
=
rugged
.
lookup
(
source_sha
)
...
...
@@ -441,13 +441,15 @@ class Repository
merge_index
=
rugged
.
merge_commits
(
our_commit
,
their_commit
)
return
false
if
merge_index
.
conflicts?
actual_options
=
options
.
merge
(
parents:
[
our_commit
,
their_commit
],
tree:
merge_index
.
write_tree
(
rugged
),
update_ref:
"refs/heads/
#{
target_branch
}
"
)
commit_with_hooks
(
user
,
target_branch
)
do
|
ref
|
actual_options
=
options
.
merge
(
parents:
[
our_commit
,
their_commit
],
tree:
merge_index
.
write_tree
(
rugged
),
update_ref:
ref
)
Rugged
::
Commit
.
create
(
rugged
,
actual_options
)
Rugged
::
Commit
.
create
(
rugged
,
actual_options
)
end
end
def
search_files
(
query
,
ref
)
...
...
app/services/merge_requests/merge_service.rb
View file @
9ea37cda
...
...
@@ -17,7 +17,7 @@ module MergeRequests
end
merge_request
.
in_locked_state
do
if
merge_changes
if
commit
after_merge
success
else
...
...
@@ -28,12 +28,6 @@ module MergeRequests
private
def
merge_changes
if
sha
=
commit
after_commit
(
sha
,
merge_request
.
target_branch
)
end
end
def
commit
committer
=
repository
.
user_to_comitter
(
current_user
)
...
...
@@ -43,11 +37,7 @@ module MergeRequests
committer:
committer
}
repository
.
merge
(
merge_request
.
source_sha
,
merge_request
.
target_branch
,
options
)
end
def
after_commit
(
sha
,
branch
)
PostCommitService
.
new
(
project
,
current_user
).
execute
(
sha
,
branch
)
repository
.
merge
(
current_user
,
merge_request
.
source_sha
,
merge_request
.
target_branch
,
options
)
end
def
after_merge
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment