From 39d83f72e7af78d503ef278e22eda25f90322f4b Mon Sep 17 00:00:00 2001
From: Lin Jen-Shin <godfat@godfat.org>
Date: Tue, 15 Nov 2016 08:10:32 +0800
Subject: [PATCH] Add a few comments to explain implementation detail

---
 app/models/repository.rb           | 2 ++
 app/services/files/base_service.rb | 3 +++
 2 files changed, 5 insertions(+)

diff --git a/app/models/repository.rb b/app/models/repository.rb
index c4bdc84348e..4e3e70192ab 100644
--- a/app/models/repository.rb
+++ b/app/models/repository.rb
@@ -1121,6 +1121,8 @@ class Repository
     fetch_ref(path_to_repo, ref, ref_path)
   end
 
+  # Whenever `source_branch` is passed, if `branch` doesn't exist, it would
+  # be created from `source_branch`.
   def update_branch_with_hooks(current_user, branch, source_branch: nil)
     update_autocrlf_option
 
diff --git a/app/services/files/base_service.rb b/app/services/files/base_service.rb
index fd62246eddb..8689c83d40e 100644
--- a/app/services/files/base_service.rb
+++ b/app/services/files/base_service.rb
@@ -75,6 +75,9 @@ module Files
       validate_target_branch
 
       if @source_project != project
+        # Make sure we have the source_branch in target project,
+        # and use source_branch as target_branch directly to avoid
+        # unnecessary source branch in target project.
         @project.fetch_ref(@source_project, @target_branch, @source_branch)
       end
     end
-- 
GitLab