diff options
author | Ahmad Sherif <me@ahmadsherif.com> | 2018-01-03 13:31:06 +0100 |
---|---|---|
committer | Ahmad Sherif <me@ahmadsherif.com> | 2018-01-04 12:39:45 +0100 |
commit | 0ba0f9de08eb3d5113f4557b925506167484950a (patch) | |
tree | cca25671cbf6f7dae37381409036678f070a91af /lib | |
parent | a0ae88613598a2b0fddad4e7a6f779827257f103 (diff) | |
download | gitlab-ce-0ba0f9de08eb3d5113f4557b925506167484950a.tar.gz |
Prepare Gitlab::Git::Repository#rebase for Gitaly migrationfix/prepare-rebase-to-be-migrated-to-gitaly
Diffstat (limited to 'lib')
-rw-r--r-- | lib/gitlab/git/operation_service.rb | 5 | ||||
-rw-r--r-- | lib/gitlab/git/repository.rb | 9 |
2 files changed, 13 insertions, 1 deletions
diff --git a/lib/gitlab/git/operation_service.rb b/lib/gitlab/git/operation_service.rb index ef5bdbaf819..3fb0e2eed93 100644 --- a/lib/gitlab/git/operation_service.rb +++ b/lib/gitlab/git/operation_service.rb @@ -97,6 +97,11 @@ module Gitlab end end + def update_branch(branch_name, newrev, oldrev) + ref = Gitlab::Git::BRANCH_REF_PREFIX + branch_name + update_ref_in_hooks(ref, newrev, oldrev) + end + private # Returns [newrev, should_run_after_create, should_run_after_create_branch] diff --git a/lib/gitlab/git/repository.rb b/lib/gitlab/git/repository.rb index 176bd953ca1..7c6349f4e84 100644 --- a/lib/gitlab/git/repository.rb +++ b/lib/gitlab/git/repository.rb @@ -1212,9 +1212,16 @@ module Gitlab rebase_path = worktree_path(REBASE_WORKTREE_PREFIX, rebase_id) env = git_env_for_user(user) + if remote_repository.is_a?(RemoteRepository) + env.merge!(remote_repository.fetch_env) + remote_repo_path = GITALY_INTERNAL_URL + else + remote_repo_path = remote_repository.path + end + with_worktree(rebase_path, branch, env: env) do run_git!( - %W(pull --rebase #{remote_repository.path} #{remote_branch}), + %W(pull --rebase #{remote_repo_path} #{remote_branch}), chdir: rebase_path, env: env ) |