mirror of
https://github.com/git/git.git
synced 2024-11-01 06:47:52 +01:00
git.el: Get the default user name and email from the repository config.
If user name or email are not set explicitly, get them from the user.name and user.email configuration values before falling back to the Emacs defaults. Signed-off-by: Alexandre Julliard <julliard@winehq.org> Signed-off-by: Junio C Hamano <junkio@cox.net>
This commit is contained in:
parent
9de83169d3
commit
75a8180d4b
1 changed files with 9 additions and 2 deletions
|
@ -59,14 +59,14 @@
|
||||||
|
|
||||||
(defcustom git-committer-name nil
|
(defcustom git-committer-name nil
|
||||||
"User name to use for commits.
|
"User name to use for commits.
|
||||||
The default is to fall back to `add-log-full-name' and then `user-full-name'."
|
The default is to fall back to the repository config, then to `add-log-full-name' and then to `user-full-name'."
|
||||||
:group 'git
|
:group 'git
|
||||||
:type '(choice (const :tag "Default" nil)
|
:type '(choice (const :tag "Default" nil)
|
||||||
(string :tag "Name")))
|
(string :tag "Name")))
|
||||||
|
|
||||||
(defcustom git-committer-email nil
|
(defcustom git-committer-email nil
|
||||||
"Email address to use for commits.
|
"Email address to use for commits.
|
||||||
The default is to fall back to `add-log-mailing-address' and then `user-mail-address'."
|
The default is to fall back to the git repository config, then to `add-log-mailing-address' and then to `user-mail-address'."
|
||||||
:group 'git
|
:group 'git
|
||||||
:type '(choice (const :tag "Default" nil)
|
:type '(choice (const :tag "Default" nil)
|
||||||
(string :tag "Email")))
|
(string :tag "Email")))
|
||||||
|
@ -203,6 +203,7 @@ The default is to fall back to `add-log-mailing-address' and then `user-mail-add
|
||||||
"Return the name to use as GIT_COMMITTER_NAME."
|
"Return the name to use as GIT_COMMITTER_NAME."
|
||||||
; copied from log-edit
|
; copied from log-edit
|
||||||
(or git-committer-name
|
(or git-committer-name
|
||||||
|
(git-repo-config "user.name")
|
||||||
(and (boundp 'add-log-full-name) add-log-full-name)
|
(and (boundp 'add-log-full-name) add-log-full-name)
|
||||||
(and (fboundp 'user-full-name) (user-full-name))
|
(and (fboundp 'user-full-name) (user-full-name))
|
||||||
(and (boundp 'user-full-name) user-full-name)))
|
(and (boundp 'user-full-name) user-full-name)))
|
||||||
|
@ -211,6 +212,7 @@ The default is to fall back to `add-log-mailing-address' and then `user-mail-add
|
||||||
"Return the email address to use as GIT_COMMITTER_EMAIL."
|
"Return the email address to use as GIT_COMMITTER_EMAIL."
|
||||||
; copied from log-edit
|
; copied from log-edit
|
||||||
(or git-committer-email
|
(or git-committer-email
|
||||||
|
(git-repo-config "user.email")
|
||||||
(and (boundp 'add-log-mailing-address) add-log-mailing-address)
|
(and (boundp 'add-log-mailing-address) add-log-mailing-address)
|
||||||
(and (fboundp 'user-mail-address) (user-mail-address))
|
(and (fboundp 'user-mail-address) (user-mail-address))
|
||||||
(and (boundp 'user-mail-address) user-mail-address)))
|
(and (boundp 'user-mail-address) user-mail-address)))
|
||||||
|
@ -268,6 +270,11 @@ The default is to fall back to `add-log-mailing-address' and then `user-mail-add
|
||||||
(git-get-string-sha1
|
(git-get-string-sha1
|
||||||
(git-call-process-env-string nil "rev-parse" rev)))
|
(git-call-process-env-string nil "rev-parse" rev)))
|
||||||
|
|
||||||
|
(defun git-repo-config (key)
|
||||||
|
"Retrieve the value associated to KEY in the git repository config file."
|
||||||
|
(let ((str (git-call-process-env-string nil "repo-config" key)))
|
||||||
|
(and str (car (split-string str "\n")))))
|
||||||
|
|
||||||
(defun git-symbolic-ref (ref)
|
(defun git-symbolic-ref (ref)
|
||||||
"Wrapper for the git-symbolic-ref command."
|
"Wrapper for the git-symbolic-ref command."
|
||||||
(let ((str (git-call-process-env-string nil "symbolic-ref" ref)))
|
(let ((str (git-call-process-env-string nil "symbolic-ref" ref)))
|
||||||
|
|
Loading…
Reference in a new issue