diff options
Diffstat (limited to 'lib/oxidized/hook')
-rw-r--r-- | lib/oxidized/hook/githubrepo.rb | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/lib/oxidized/hook/githubrepo.rb b/lib/oxidized/hook/githubrepo.rb index 83e1078..25b2cd0 100644 --- a/lib/oxidized/hook/githubrepo.rb +++ b/lib/oxidized/hook/githubrepo.rb @@ -16,12 +16,14 @@ class GithubRepo < Oxidized::Hook end def fetch_and_merge_remote(repo, credentials) - their_branch = repo.branches["origin/master"] or return - repo.fetch('origin', [repo.head.name], credentials: credentials) + their_branch = repo.branches["origin/master"] or return + merge_index = repo.merge_commits(repo.head.target_id, their_branch.target_id) + log("Conflicts detected", :warn) if merge_index.conflicts? + Rugged::Commit.create(repo, { parents: [repo.head.target, their_branch.target], tree: merge_index.write_tree(repo), |