diff --git a/app/controllers/concerns/creates_commit.rb b/app/controllers/concerns/creates_commit.rb
index dacb5679dd300fde4a034ba762960ee5a41610e7..84b4a30c6d5e8f7eb9489ff7f46130de2fc0c3f6 100644
--- a/app/controllers/concerns/creates_commit.rb
+++ b/app/controllers/concerns/creates_commit.rb
@@ -7,7 +7,8 @@ module CreatesCommit
     commit_params = @commit_params.merge(
       source_project: @project,
       source_branch: @ref,
-      target_branch: @target_branch
+      target_branch: @target_branch,
+      file_path: @path
     )
 
     result = service.new(@tree_edit_project, current_user, commit_params).execute
diff --git a/app/controllers/projects/blob_controller.rb b/app/controllers/projects/blob_controller.rb
index 4c42be7d71087164bb6dbc864a8616562bfcbe79..e76d5009855df2d260b10a5fb65a117e7287f872 100644
--- a/app/controllers/projects/blob_controller.rb
+++ b/app/controllers/projects/blob_controller.rb
@@ -44,7 +44,11 @@ class Projects::BlobController < Projects::ApplicationController
           "#file-path-#{hexdigest(@path)}"
       else
         # params[:file_name] stores the new name for the file
-        namespace_project_blob_path(@project.namespace, @project, File.join(@target_branch, params[:file_name]))
+        unless params[:file_name] == @path
+          @path = params[:file_name]
+        end
+
+        namespace_project_blob_path(@project.namespace, @project, File.join(@target_branch, @path))
       end
 
     create_commit(Files::UpdateService, success_path: after_edit_path,
diff --git a/app/services/files/base_service.rb b/app/services/files/base_service.rb
index 0326a8823e975c20a7a02825ba1b1da94f27868f..cd5b45262ac07fa53f5c156662e4ba272abca17b 100644
--- a/app/services/files/base_service.rb
+++ b/app/services/files/base_service.rb
@@ -15,6 +15,8 @@ module Files
                           params[:file_content]
                         end
 
+      puts @file_path
+
       # Validate parameters
       validate