Junio, On Thu, May 22, 2014 at 01:52:45PM -0700, Junio C Hamano wrote: > Jeremiah Mahler <jmmahler@xxxxxxxxx> writes: > ... > > Something like: > > To countermand the configuration variable for a specific run: > > $ git format-patch -1 --signature="This time only" > $ git format-patch -1 --signature ;# to use the default > $ git format-patch -1 --signature="" ;# to add nothing > ... > > I didn't see offhand if the tests make sure that a configured mail > signature can be overriden from the command line. I think you would > want to test, with format-patch.signature-file pointing at the > mail-signature file, at least these three cases: > > - Run "format-patch --no-signature" and make sure that stops the > contents from mail-signature file from being shown, and instead > no mail-signature is given. > --no-signature should inhibit all signatures. > - Run "format-patch --signature='this time only'" and make sure > that stops the contents from mail-signature file from being shown > and "this time only" is used instead. > > - Run "format-patch --signature-file=another-mail-signature" and > make sure that stops the contents from mail-signature file from > being shown and the contents from the other file is used instead. > Arguments on the command line should take precendence over anything in the config. Your comments make it clear that I have not accounted for all the possible cases. Below is a table of all the reasonable cases. It should account for cases you mentioned as well as others. Key: --- default: Git version number sig1: .signature from column 1 file1: .signaturefile from column 1 sig2: --signature from column 2 file2: --signature-file in column 2 A preceeding 'format.' is assumed for config. .signature -> format.signature Command line arguments take precedence over config options. |----------------------------+-------------------------------------+---------| | config (1) | argv (2) | | |----------------------------+-------------------------------------+---------| | | | default | | | --signature | sig2 | | | --signature-file | file2 | | | --no-signature | none | | | --no-signature-file | none | | | --signature, --signature-file | die | | | --signature, --no-signature-file | sig2 | | | --signature-file, --no-signature | none | | | --no-signature, --no-signature-file | none | | .signature | | sig1 | | .signature | --signature | sig2 | | .signature | --signature-file | file2 | | .signature | --no-signature | none | | .signature | --no-signature-file | sig1 | | .signature | --signature, --signature-file | die | | .signature | --signature, --no-signature-file | sig2 | | .signature | --signature-file, --no-signature | none | | .signature | --no-signature, --no-signature-file | none | | .signaturefile | | file1 | | .signaturefile | --signature | sig2 | | .signaturefile | --signature-file | file2 | | .signaturefile | --no-signature | none | | .signaturefile | --no-signature-file | default | | .signaturefile | --signature, --signature-file | die | | .signaturefile | --signature, --no-signature-file | sig2 | | .signaturefile | --signature-file, --no-signature | none | | .signaturefile | --no-signature, --no-signature-file | none | | .signature, .signaturefile | | die | | .signature, .signaturefile | --signature | sig2 | | .signature, .signaturefile | --signature-file | file2 | | .signature, .signaturefile | --no-signature | none | | .signature, .signaturefile | --no-signature-file | sig1 | | .signature, .signaturefile | --signature, --signature-file | die | | .signature, .signaturefile | --signature, --no-signature-file | sig2 | | .signature, .signaturefile | --signature-file, --no-signature | none | | .signature, .signaturefile | --no-signature, --no-signature-file | none | |----------------------------+-------------------------------------+---------| Thanks, -- Jeremiah Mahler jmmahler@xxxxxxxxx http://github.com/jmahler -- 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