Signed-off-by: Santi Béjar <sbejar@xxxxxxxxx> --- Documentation/config.txt | 4 ++++ builtin-commit.c | 2 +- cache.h | 1 + config.c | 5 +++++ environment.c | 1 + t/t7502-commit.sh | 15 +++++++++++++-- 6 files changed, 25 insertions(+), 3 deletions(-) diff --git a/Documentation/config.txt b/Documentation/config.txt index 824e416..9c770a6 100644 --- a/Documentation/config.txt +++ b/Documentation/config.txt @@ -994,6 +994,10 @@ user.signingkey:: unchanged to gpg's --local-user parameter, so you may specify a key using any method that gpg supports. +user.warnautomatic:: + A boolean to show the committer ident while committing in the editor + if it is set automatically. Defaults to true. + whatchanged.difftree:: The default linkgit:git-diff-tree[1] arguments to be used for linkgit:git-whatchanged[1]. diff --git a/builtin-commit.c b/builtin-commit.c index 353f9c7..381e3c8 100644 --- a/builtin-commit.c +++ b/builtin-commit.c @@ -566,7 +566,7 @@ static int prepare_to_commit(const char *index_file, const char *prefix) showed_ident++ ? "" : "#\n", author_ident); - if (!user_explicit) + if (!user_explicit && user_warnautomatic) fprintf(fp, "%s" "# Committer: %s\n", diff --git a/cache.h b/cache.h index e8b26cf..5d0dd23 100644 --- a/cache.h +++ b/cache.h @@ -719,6 +719,7 @@ extern int config_error_nonbool(const char *); extern char git_default_email[MAX_GITNAME]; extern char git_default_name[MAX_GITNAME]; extern int user_explicit; +extern int user_warnautomatic; extern const char *git_commit_encoding; extern const char *git_log_output_encoding; diff --git a/config.c b/config.c index e49804a..1588053 100644 --- a/config.c +++ b/config.c @@ -457,6 +457,11 @@ int git_default_config(const char *var, const char *value) return 0; } + if (!strcmp(var, "user.warnautomatic")) { + user_warnautomatic = git_config_bool(var, value); + return 0; + } + if (!strcmp(var, "i18n.commitencoding")) return git_config_string(&git_commit_encoding, var, value); diff --git a/environment.c b/environment.c index b941971..6b6ede6 100644 --- a/environment.c +++ b/environment.c @@ -12,6 +12,7 @@ char git_default_email[MAX_GITNAME]; char git_default_name[MAX_GITNAME]; int user_explicit = 0; +int user_warnautomatic = 1; int trust_executable_bit = 1; int quote_path_fully = 1; int has_symlinks = 1; diff --git a/t/t7502-commit.sh b/t/t7502-commit.sh index 018060c..a63f9c4 100755 --- a/t/t7502-commit.sh +++ b/t/t7502-commit.sh @@ -166,14 +166,25 @@ test_expect_success 'author different from committer' ' test_cmp expect actual ' +unset GIT_COMMITTER_EMAIL +unset GIT_COMMITTER_NAME + +test_expect_success 'committer is automatic but user.warnautomatic=no' ' + + git config user.warnautomatic no + echo >>negative && + git commit -e -m "sample" + head -n 7 .git/COMMIT_EDITMSG >actual && + test_cmp expect actual +' + sed -i '$d' expect echo "# Committer: #" >> expect -unset GIT_COMMITTER_EMAIL -unset GIT_COMMITTER_NAME test_expect_success 'committer is automatic' ' + git config --unset user.warnautomatic echo >>negative && git commit -e -m "sample" head -n 8 .git/COMMIT_EDITMSG | \ -- 1.5.5.1.224.gadb29 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html