Code

format-patch: Always generate a patch
authorBjörn Gustavsson <bgustavsson@gmail.com>
Sat, 7 Nov 2009 09:51:56 +0000 (10:51 +0100)
committerJunio C Hamano <gitster@pobox.com>
Tue, 10 Nov 2009 19:37:47 +0000 (11:37 -0800)
commit02bc5b03f54b51f8b45c81cce74284ced602e6de
tree2db7bc95606ca7d8e7d2492e602ad22810bfc3fd
parent1d46f2ea143534e46e6bfee3f34cd90b734bfe80
format-patch: Always generate a patch

Jeff King recently reinstated -p to suppress the default diffstat
(as -p used to work before 68daa64, about 14 months ago).

However, -p is also needed in combination with certain options
(e.g. --stat or --numstat) in order to produce any patch at all.
The documentation does not mention this.

Since the purpose of format-patch is to produce a patch that
can be emailed, it does not make sense that certain combination
of options will suppress the generation of the patch itself.

Therefore:

* Update 'git format-patch' to always generate a patch.

* Since the --name-only, --name-status, and --check suppresses
  the generation of the patch, disallow those options,
  and remove the description of them in the documentation.

* Remove the reference to -p in the description of -U.

* Remove the descriptions of the options that are synonyms for -p
  plus another option (--patch-with-raw and --patch-with-stat).

* While at it, slightly tweak the description of -p itself
  to say that it generates "plain patches", so that you can
  think of -p as "plain patch" as an mnemonic aid.

Signed-off-by: Björn Gustavsson <bgustavsson@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Documentation/diff-options.txt
builtin-log.c
t/t4014-format-patch.sh