git/list[1] front-page[2] threads[3] people[4] search[5] about
 

[PATCH v3] diff: document -U without <n> as using default context

From
Tian Yuchen <cat@malon.dev>
Date
Mar 10, 2026, 09:50 UTC
Message-ID
<20260310095017.131957-1-cat@malon.dev>
In-Reply-To
<20260309172719.125419-1-cat@malon.dev>

The documentation for '-U<n>' implies that the numeric value '<n>' is mandatory. However, the command line parser has historically accepted '-U' without a number.

Strictly requiring a number for '-U' would break existing tests (e.g., in 't4013') and likely disrupt user scripts relying on this undocumented behavior.

Hence we retain this fallback behavior for backward compatibility, but document it as such.

Signed-off-by: Tian Yuchen <cat@malon.dev>
---
 Documentation/diff-context-options.adoc | 6 ++++--
 Documentation/diff-options.adoc         | 6 ++++--
 2 files changed, 8 insertions(+), 4 deletions(-)
diff --git a/Documentation/diff-context-options.adoc b/Documentation/diff-context-options.adoc
index e161260358..306abfd9ab 100644
--- a/Documentation/diff-context-options.adoc
+++ b/Documentation/diff-context-options.adoc
@@ -1,7 +1,9 @@
 `-U<n>`::
 `--unified=<n>`::
-	Generate diffs with _<n>_ lines of context. Defaults to `diff.context`
-	or 3 if the config option is unset.
+	Generate diffs with _<n>_ lines of context. The number of context
+	lines defaults to `diff.context` or 3 if the config option is unset.
+	(`-U` without `<n>` is silently accepted as a synonym for `-p` due
+	to a historical accident).
 
 `--inter-hunk-context=<n>`::
 	Show the context between diff hunks, up to the specified _<number>_
diff --git a/Documentation/diff-options.adoc b/Documentation/diff-options.adoc
index 9cdad6f72a..e1f20bedf6 100644
--- a/Documentation/diff-options.adoc
+++ b/Documentation/diff-options.adoc
@@ -127,8 +127,10 @@ endif::git-log[]
 
 `-U<n>`::
 `--unified=<n>`::
-	Generate diffs with _<n>_ lines of context instead of
-	the usual three.
+	Generate diffs with _<n>_ lines of context. The number of context
+	lines defaults to `diff.context` or 3 if the config option is unset.
+	(`-U` without `<n>` is silently accepted as a synonym for `-p` due
+	to a historical accident).	
 ifndef::git-format-patch[]
 	Implies `--patch`.
 endif::git-format-patch[]
-- 
2.43.0
Previous: Junio C HamanoNext: Jean-Noël AVILA
Message 12 of 14 in “An annoying "Bug" that we would probably leave as-is”
  1. Junio C HamanoMar 6, 2026
  2. Tian YuchenMar 9, 2026
  3. diff: document -U without <n> as using default contextTian Yuchen, Mar 9, 2026
  4. D. Ben KnobleMar 9, 2026
  5. Tian YuchenMar 10, 2026
  6. Junio C HamanoMar 9, 2026
  7. Tian YuchenMar 10, 2026
  8. diff: document -U without <n> as using default contextTian Yuchen, Mar 10, 2026
  9. Oswald BuddenhagenMar 10, 2026
  10. Tian YuchenMar 10, 2026
  11. Junio C HamanoMar 10, 2026
  12. diff: document -U without <n> as using default contextTian Yuchen, Mar 10, 2026
  13. Jean-Noël AVILAMar 10, 2026
  14. Tian YuchenMar 11, 2026

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.