From: Mehul Jain <mehul.jain2029@gmail.com>
To: git@vger.kernel.org
Cc: Austin English <austinenglish@gmail.com>,
Mehul Jain <mehul.jain2029@gmail.com>
Subject: [RFC/PATCH 1/2] log: add "log.showsignature" configuration variable
Date: Thu, 26 May 2016 18:36:46 +0530 [thread overview]
Message-ID: <20160526130647.27001-2-mehul.jain2029@gmail.com> (raw)
In-Reply-To: <20160526130647.27001-1-mehul.jain2029@gmail.com>
People may want to always use "--show-signature" while using "git log"
or "git show".
When log.showsignature set true, "git log" and "git show" will behave
as "--show-signature" was given to them.
Signed-off-by: Mehul Jain <mehul.jain2029@gmail.com>
---
Documentation/git-log.txt | 4 ++++
builtin/log.c | 6 ++++++
t/t4202-log.sh | 19 +++++++++++++++++++
t/t7510-signed-commit.sh | 7 +++++++
4 files changed, 36 insertions(+)
diff --git a/Documentation/git-log.txt b/Documentation/git-log.txt
index 03f9580..f39f800 100644
--- a/Documentation/git-log.txt
+++ b/Documentation/git-log.txt
@@ -196,6 +196,10 @@ log.showRoot::
`git log -p` output would be shown without a diff attached.
The default is `true`.
+log.showSignature::
+ If `true`, `git log` and `git show` will act as if `--show-signature`
+ option was passed to them.
+
mailmap.*::
See linkgit:git-shortlog[1].
diff --git a/builtin/log.c b/builtin/log.c
index 099f4f7..7103217 100644
--- a/builtin/log.c
+++ b/builtin/log.c
@@ -33,6 +33,7 @@ static const char *default_date_mode = NULL;
static int default_abbrev_commit;
static int default_show_root = 1;
static int default_follow;
+static int default_show_signature;
static int decoration_style;
static int decoration_given;
static int use_mailmap_config;
@@ -119,6 +120,7 @@ static void cmd_log_init_defaults(struct rev_info *rev)
rev->abbrev_commit = default_abbrev_commit;
rev->show_root_diff = default_show_root;
rev->subject_prefix = fmt_patch_subject_prefix;
+ rev->show_signature = default_show_signature;
DIFF_OPT_SET(&rev->diffopt, ALLOW_TEXTCONV);
if (default_date_mode)
@@ -409,6 +411,10 @@ static int git_log_config(const char *var, const char *value, void *cb)
use_mailmap_config = git_config_bool(var, value);
return 0;
}
+ if (!strcmp(var, "log.showsignature")) {
+ default_show_signature = git_config_bool(var, value);
+ return 0;
+ }
if (grep_config(var, value, cb) < 0)
return -1;
diff --git a/t/t4202-log.sh b/t/t4202-log.sh
index 128ba93..36be9a1 100755
--- a/t/t4202-log.sh
+++ b/t/t4202-log.sh
@@ -890,6 +890,25 @@ test_expect_success GPG 'log --graph --show-signature for merged tag' '
grep "^| | gpg: Good signature" actual
'
+test_expect_success GPG 'log.showsignature=true behaves like --show-signature' '
+ git checkout -b test_sign master &&
+ echo foo >foo &&
+ git add foo &&
+ git commit -S -m signed_commit &&
+ test_config log.showsignature true &&
+ git log -1 signed >actual &&
+ test_i18ngrep "gpg: Signature made" actual &&
+ test_i18ngrep "gpg: Good signature" actual
+'
+
+test_expect_success GPG '--show-signature overrides log.showsignature=false' '
+ test_when_finished "git reset --hard && git checkout master" &&
+ git config log.showsignature false &&
+ git log -1 --show-signature signed >actual &&
+ test_i18ngrep "gpg: Signature made" actual &&
+ test_i18ngrep "gpg: Good signature" actual
+'
+
test_expect_success 'log --graph --no-walk is forbidden' '
test_must_fail git log --graph --no-walk
'
diff --git a/t/t7510-signed-commit.sh b/t/t7510-signed-commit.sh
index 4177a86..326dcc8 100755
--- a/t/t7510-signed-commit.sh
+++ b/t/t7510-signed-commit.sh
@@ -210,4 +210,11 @@ test_expect_success GPG 'show lack of signature with custom format' '
test_cmp expect actual
'
+test_expect_success GPG 'log.showsignature behaves like --show-signature' '
+ git config log.showsignature true &&
+ git show initial > actual &&
+ test_i18ngrep "gpg: Signature made" actual &&
+ test_i18ngrep "gpg: Good signature" actual
+'
+
test_done
--
2.9.0.rc0.dirty
next prev parent reply other threads:[~2016-05-26 13:08 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-05-26 13:06 [RFC/PATCH 0/2] Introduce "log.showSignature" config variable Mehul Jain
2016-05-26 13:06 ` Mehul Jain [this message]
2016-05-26 13:42 ` [RFC/PATCH 1/2] log: add "log.showsignature" configuration variable Remi Galan Alfonso
2016-05-26 15:04 ` Mehul Jain
2016-05-26 15:43 ` Remi Galan Alfonso
2016-05-26 16:06 ` Mehul Jain
2016-05-27 4:01 ` Pranit Bauva
2016-05-26 16:59 ` Jeff King
2016-05-27 6:04 ` Mehul Jain
2016-05-26 13:06 ` [RFC/PATCH 2/2] log: add "--no-show-signature" command line option Mehul Jain
2016-05-26 16:32 ` Jeff King
2016-05-26 16:42 ` Mehul Jain
2016-05-26 17:01 ` Jeff King
2016-05-26 17:22 ` Junio C Hamano
2016-05-27 6:08 ` Mehul Jain
2016-05-27 17:37 ` Junio C Hamano
2016-05-27 17:48 ` Jeff King
2016-05-27 2:55 ` [RFC/PATCH 0/2] Introduce "log.showSignature" config variable Austin English
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160526130647.27001-2-mehul.jain2029@gmail.com \
--to=mehul.jain2029@gmail.com \
--cc=austinenglish@gmail.com \
--cc=git@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).