diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-01-18 22:00:14 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-01-18 22:00:14 +0300 |
commit | 05f0ebba3a2c8ddf39e436f412dc2ab5bf1353b2 (patch) | |
tree | 11d0f2a6ec31c7793c184106cedc2ded3d9a2cc5 /app/services/files | |
parent | ec73467c23693d0db63a797d10194da9e72a74af (diff) |
Add latest changes from gitlab-org/gitlab@15-8-stable-eev15.8.0-rc42
Diffstat (limited to 'app/services/files')
-rw-r--r-- | app/services/files/base_service.rb | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/app/services/files/base_service.rb b/app/services/files/base_service.rb index 1055f5ff088..8f722de2019 100644 --- a/app/services/files/base_service.rb +++ b/app/services/files/base_service.rb @@ -9,7 +9,7 @@ module Files git_user = Gitlab::Git::User.from_gitlab(current_user) if current_user.present? - @author_email = params[:author_email] || git_user&.email + @author_email = commit_email(git_user) @author_name = params[:author_name] || git_user&.name @commit_message = params[:commit_message] @last_commit_sha = params[:last_commit_sha] @@ -33,5 +33,18 @@ module Files last_commit.sha != commit_id end + + private + + def commit_email(git_user) + return params[:author_email] if params[:author_email].present? + return unless current_user + + namespace_commit_email = current_user.namespace_commit_email_for_project(@start_project) + + return namespace_commit_email.email.email if namespace_commit_email + + git_user.email + end end end |