* No config option for `git diff --stat` to always show the full file path and name (without .../ abbreviations)
@ 2025-10-19 18:46 Дилян Палаузов
2025-10-20 0:59 ` Ben Knoble
2025-10-21 8:14 ` Jeff King
0 siblings, 2 replies; 5+ messages in thread
From: Дилян Палаузов @ 2025-10-19 18:46 UTC (permalink / raw)
To: git
Hello,
After `git diff --stat` determines the available width, it uses correctly all available space for the file paths and names:
```
$ git show --stat --oneline
0fb93104ba (HEAD -> java223/main) SourceGenerator: avoid delayed actions after the bundle is deactivated
.../main/java/org/openhab/automation/java223/internal/Java223ScriptEngineFactory.java | 1 +
.../java/org/openhab/automation/java223/internal/codegeneration/SourceGenerator.java | 16 +++++++++++-----
2 files changed, 12 insertions(+), 5 deletions(-)
```
https://git-scm.com/docs/git-diff#Documentation/git-diff.txt---statwidthname-widthcount describes that after --stat can be entered up to three numbers, two of which can be set by a config option. The same options apply also for show --stat : https://git-scm.com/docs/git-show#Documentation/git-show.txt---statwidthname-widthcount .
I set in /etc/gitconfig:
[diff]
statGraphWidth = 200
statNameWidth = 200
which is effectively the same as calling:
```
$ git show --stat-graph-width=200 --stat-graph-width=200 --oneline
0fb93104ba (HEAD -> java223/main) SourceGenerator: avoid delayed actions after the bundle is deactivated
.../main/java/org/openhab/automation/java223/internal/Java223ScriptEngineFactory.java | 1 +
.../java/org/openhab/automation/java223/internal/codegeneration/SourceGenerator.java | 16 +++++++++++-----
2 files changed, 12 insertions(+), 5 deletions(-)
```
There is no difference. diff.statGraphWidth / diff.statNameWidth / --stat-graph-width= / --stat-graph-width=200 set some number of columns within the available space. But I want to change the size of the available space to defaut to 200 (or to infinity).
The reason is that I can then copy the file path (e.g. with the mouse) from the git --stat output and open it immediately with less or emacs.
* Please either alter the option `diff.statGraphWidth` to enlarge the available space (broader than the terminal width), or add an option to `git config` to set the available space for `--stat`. This option should eventually allow always to print the full path and filenames.
Greetings
Дилян
---
git 2.51.0
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: No config option for `git diff --stat` to always show the full file path and name (without .../ abbreviations)
2025-10-19 18:46 No config option for `git diff --stat` to always show the full file path and name (without .../ abbreviations) Дилян Палаузов
@ 2025-10-20 0:59 ` Ben Knoble
2025-10-21 8:14 ` Jeff King
1 sibling, 0 replies; 5+ messages in thread
From: Ben Knoble @ 2025-10-20 0:59 UTC (permalink / raw)
To: Дилян Палаузов
Cc: git
> Le 19 oct. 2025 à 14:50, Дилян Палаузов <dilyan.palauzov@aegee.org> a écrit :
[snip]
> The reason is that I can then copy the file path (e.g. with the mouse) from the git --stat output and open it immediately with less or emacs.
You might be interested in git-jump in the contrib area.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: No config option for `git diff --stat` to always show the full file path and name (without .../ abbreviations)
2025-10-19 18:46 No config option for `git diff --stat` to always show the full file path and name (without .../ abbreviations) Дилян Палаузов
2025-10-20 0:59 ` Ben Knoble
@ 2025-10-21 8:14 ` Jeff King
2025-10-21 14:46 ` Junio C Hamano
1 sibling, 1 reply; 5+ messages in thread
From: Jeff King @ 2025-10-21 8:14 UTC (permalink / raw)
To: Дилян Палаузов
Cc: git
On Sun, Oct 19, 2025 at 09:46:10PM +0300, Дилян Палаузов wrote:
> * Please either alter the option `diff.statGraphWidth` to enlarge the
> available space (broader than the terminal width), or add an option to
> `git config` to set the available space for `--stat`. This option
> should eventually allow always to print the full path and filenames.
It does seem funny that we have config options for 2 out of 3 of the
numbers you can specify via --stat. So adding diff.statTotalWidth or
something would make sense to me. I'd guess nobody has asked for it yet
because it defaults to the terminal width, so a static config option
risks overflowing your terminal if it's too high. On the other hand, if
we are going to show it in a pager anyway, they usually support
horizontal scrolling. And I guess it's all a matter of preference.
Anyway, one more possible hack: you can set COLUMNS if you want to
pretend you have a really big terminal. I.e., "export COLUMNS=200" would
probably do what you want without any new Git feature.
-Peff
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: No config option for `git diff --stat` to always show the full file path and name (without .../ abbreviations)
2025-10-21 8:14 ` Jeff King
@ 2025-10-21 14:46 ` Junio C Hamano
2025-10-22 9:15 ` Jeff King
0 siblings, 1 reply; 5+ messages in thread
From: Junio C Hamano @ 2025-10-21 14:46 UTC (permalink / raw)
To: Jeff King
Cc: Дилян Палаузов,
git
Jeff King <peff@peff.net> writes:
> Anyway, one more possible hack: you can set COLUMNS if you want to
> pretend you have a really big terminal. I.e., "export COLUMNS=200" would
> probably do what you want without any new Git feature.
;-)
Isn't that the exact purpose of that environment variable? It feels
a bit unfair to the variable to call it a hack.
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: No config option for `git diff --stat` to always show the full file path and name (without .../ abbreviations)
2025-10-21 14:46 ` Junio C Hamano
@ 2025-10-22 9:15 ` Jeff King
0 siblings, 0 replies; 5+ messages in thread
From: Jeff King @ 2025-10-22 9:15 UTC (permalink / raw)
To: Junio C Hamano
Cc: Дилян Палаузов,
git
On Tue, Oct 21, 2025 at 07:46:13AM -0700, Junio C Hamano wrote:
> Jeff King <peff@peff.net> writes:
>
> > Anyway, one more possible hack: you can set COLUMNS if you want to
> > pretend you have a really big terminal. I.e., "export COLUMNS=200" would
> > probably do what you want without any new Git feature.
>
> ;-)
>
> Isn't that the exact purpose of that environment variable? It feels
> a bit unfair to the variable to call it a hack.
Yes, though I think OP wanted something that would work for every
invocation of git, without having to pass it explicitly (otherwise they
could just use "--stat=200"). Setting COLUMNS=200 sounds like a risky
proposition if you run other programs besides Git.
-Peff
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2025-10-22 9:15 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-10-19 18:46 No config option for `git diff --stat` to always show the full file path and name (without .../ abbreviations) Дилян Палаузов
2025-10-20 0:59 ` Ben Knoble
2025-10-21 8:14 ` Jeff King
2025-10-21 14:46 ` Junio C Hamano
2025-10-22 9:15 ` Jeff King
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).