summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Documentation/config.txt4
-rw-r--r--gpg-interface.c10
2 files changed, 14 insertions, 0 deletions
diff --git a/Documentation/config.txt b/Documentation/config.txt
index 1cc18a8..ac373e3 100644
--- a/Documentation/config.txt
+++ b/Documentation/config.txt
@@ -1828,6 +1828,10 @@ gpg.program::
signed, and the program is expected to send the result to its
standard output.
+gpg.format::
+ Specifies which key format to use when signing with `--gpg-sign`.
+ Default is "openpgp", that is also the only supported value.
+
gui.commitMsgWidth::
Defines how wide the commit message window is in the
linkgit:git-gui[1]. "75" is the default.
diff --git a/gpg-interface.c b/gpg-interface.c
index 09ddfbc..b39a279 100644
--- a/gpg-interface.c
+++ b/gpg-interface.c
@@ -7,6 +7,7 @@
#include "tempfile.h"
static char *configured_signing_key;
+static const char *gpg_format = "openpgp";
static const char *gpg_program = "gpg";
#define PGP_SIGNATURE "-----BEGIN PGP SIGNATURE-----"
@@ -138,6 +139,15 @@ int git_gpg_config(const char *var, const char *value, void *cb)
return 0;
}
+ if (!strcmp(var, "gpg.format")) {
+ if (!value)
+ return config_error_nonbool(var);
+ if (strcmp(value, "openpgp"))
+ return error("unsupported value for %s: %s",
+ var, value);
+ return git_config_string(&gpg_format, var, value);
+ }
+
if (!strcmp(var, "gpg.program")) {
if (!value)
return config_error_nonbool(var);