]> git.ipfire.org Git - thirdparty/git.git/commit
gpg-interface: lazily initialize and read the configuration
authorJunio C Hamano <gitster@pobox.com>
Thu, 9 Feb 2023 20:24:14 +0000 (12:24 -0800)
committerJunio C Hamano <gitster@pobox.com>
Fri, 10 Feb 2023 01:01:27 +0000 (17:01 -0800)
commitfd2d4c135ed974fdddf2af687748d28c58575984
treee18cf51b6539a7517925f237ee76c8f84b57c5a1
parent7876265d61cebef91f5b26db2dceab0fb95cfa3d
gpg-interface: lazily initialize and read the configuration

Instead of forcing the porcelain commands to always read the
configuration variables related to the signing and verifying
signatures, lazily initialize the necessary subsystem on demand upon
the first use.

This hopefully would make it more future-proof as we do not have to
think and decide whether we should call git_gpg_config() in the
git_config() callback for each command.

A few git_config() callback functions that used to be custom
callbacks are now just a thin wrapper around git_default_config().
We could further remove, git_FOO_config and replace calls to
git_config(git_FOO_config) with git_config(git_default_config), but
to make it clear which ones are affected and the effect is only the
removal of git_gpg_config(), it is vastly preferred not to do such a
change in this step (they can be done on top once the dust settled).

Signed-off-by: Junio C Hamano <gitster@pobox.com>
17 files changed:
builtin/am.c
builtin/commit-tree.c
builtin/commit.c
builtin/log.c
builtin/merge.c
builtin/pull.c
builtin/push.c
builtin/receive-pack.c
builtin/send-pack.c
builtin/tag.c
builtin/verify-commit.c
builtin/verify-tag.c
fmt-merge-msg.c
gpg-interface.c
gpg-interface.h
sequencer.c
t/t7031-verify-tag-signed-ssh.sh