The subcommand `git commit` supports a `--no-gpg-sign` argument, which is useful incases where e.g. a GPG key is specified in `.gitconfig`, but is located on a hardware key that may not currently be attached to the system. Multiple commands that understand --gpg-sign but haven't understand --no-gpg-sign, yet. Also, document more commands that honours --no-gpg-sign Change in v3 since v2: - Use `backticks` instead of "dquote" for options - Add missing "--no-gpg-sign::" - Merge git-commit-tree --[no-]gpg-sign" Change in v2 since v1: - FREE_AND_NULL as soon as possible - update test code for rebase --no-gpg-sign - revert (--edit which is default in tty) now honours --no-gpg-sign - cherry-pick --edit now honours --no-gpg-sign - add more documentation Đoàn Trần Công Danh (6): rebase.c: honour --no-gpg-sign cherry-pick/revert: honour --no-gpg-sign in all case Documentation: document am --no-gpg-sign Documentation: reword commit --no-gpg-sign Documentation: merge commit-tree --[no-]gpg-sign Documentation: document merge option --no-gpg-sign Documentation/git-am.txt | 5 +- Documentation/git-cherry-pick.txt | 5 +- Documentation/git-commit-tree.txt | 8 ++- Documentation/git-commit.txt | 9 ++-- Documentation/git-rebase.txt | 5 +- Documentation/git-revert.txt | 5 +- Documentation/merge-options.txt | 5 +- builtin/rebase.c | 7 +-- sequencer.c | 2 + t/t3435-rebase-gpg-sign.sh | 71 +++++++++++++++++++++++++ t/t3514-cherry-pick-revert-gpg.sh | 86 +++++++++++++++++++++++++++++++ 11 files changed, 190 insertions(+), 18 deletions(-) create mode 100755 t/t3435-rebase-gpg-sign.sh create mode 100755 t/t3514-cherry-pick-revert-gpg.sh Range-diff against v2: 1: b886c69e92 ! 1: b601c99f7b rebase.c: honour --no-gpg-sign @@ Metadata ## Commit message ## rebase.c: honour --no-gpg-sign - Signed-off-by: Đoàn Trần Công Danh <congdanhqx@xxxxxxxxx> - ## Documentation/git-rebase.txt ## @@ Documentation/git-rebase.txt: See also INCOMPATIBLE OPTIONS below. @@ Documentation/git-rebase.txt: See also INCOMPATIBLE OPTIONS below. GPG-sign commits. The `keyid` argument is optional and defaults to the committer identity; if specified, it must be - stuck to the option without a space. -+ stuck to the option without a space. "--no-gpg-sign" is useful to ++ stuck to the option without a space. `--no-gpg-sign` is useful to + countermand both `commit.gpgSign` configuration variable, and -+ earlier "--gpg-sign". ++ earlier `--gpg-sign`. -q:: --quiet:: 2: e1b6d7866d ! 2: 28ebbfe72a cherry-pick/revert: honour --no-gpg-sign in all case @@ Documentation/git-cherry-pick.txt: effect to your index in a row. GPG-sign commits. The `keyid` argument is optional and defaults to the committer identity; if specified, it must be - stuck to the option without a space. -+ stuck to the option without a space. "--no-gpg-sign" is useful to ++ stuck to the option without a space. `--no-gpg-sign` is useful to + countermand both `commit.gpgSign` configuration variable, and -+ earlier "--gpg-sign". ++ earlier `--gpg-sign`. --ff:: If the current HEAD is the same as the parent of the @@ Documentation/git-revert.txt: effect to your index in a row. GPG-sign commits. The `keyid` argument is optional and defaults to the committer identity; if specified, it must be - stuck to the option without a space. -+ stuck to the option without a space. "--no-gpg-sign" is useful to ++ stuck to the option without a space. `--no-gpg-sign` is useful to + countermand both `commit.gpgSign` configuration variable, and -+ earlier "--gpg-sign". ++ earlier `--gpg-sign`. -s:: --signoff:: 3: 9cc14b52e4 < -: ---------- Documentation: document am --no-gpg-sign 4: 801750016e < -: ---------- Documentation: reword commit --no-gpg-sign -: ---------- > 3: 340374fb68 Documentation: document am --no-gpg-sign -: ---------- > 4: 1b952f7348 Documentation: reword commit --no-gpg-sign -: ---------- > 5: 685832b069 Documentation: merge commit-tree --[no-]gpg-sign 5: 857178defd ! 6: b1a3d42355 Documentation: document merge option --no-gpg-sign @@ Documentation/merge-options.txt: When not possible, refuse to merge and exit wit GPG-sign the resulting merge commit. The `keyid` argument is optional and defaults to the committer identity; if specified, - it must be stuck to the option without a space. -+ it must be stuck to the option without a space. "--no-gpg-sign" ++ it must be stuck to the option without a space. `--no-gpg-sign` + is useful to countermand both `commit.gpgSign` configuration variable, -+ and earlier "--gpg-sign". ++ and earlier `--gpg-sign`. --log[=<n>]:: --no-log:: -- 2.26.0.334.g6536db25bb