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

Re: [PATCH 0/4] run auto maintenance in git-gui

From
Johannes Sixt <j6t@kdbg.org>
Date
Mar 7, 2026, 11:32 UTC
Message-ID
<e17f094f-f869-4cc9-b59c-091b7e61a021@kdbg.org>
In-Reply-To
<091e68fa-428d-48b0-bf7d-42b01660d6eb@app.fastmail.com>
Am 06.03.26 um 06:15 schrieb Wolfgang Faust:
Show 8 quoted lines
> Resurrecting the 2019 conversation "git-gui: disable the "loose objects
> popup" dialog?":
> <https://lore.kernel.org/git/CAGr--=K15nUcnsJWOP87uMMjeQmTgAeO_6hnr12k2zuNQjNyBw@mail.gmail.com/t/#u>
> 
> The consensus there seems to be that git's auto maintenance is now
> good enough and if git-gui implemented the same behavior as `git commit`
> then the "repository currently has approximately %i loose objects"
> dialog would no longer be necessary. This patch series implements that.
Generally, I like the idea.

However, the consequences for users need to be considered. You replace the custom implementation of `git gc` with `git maintenance run --auto`. The latter CAN do a lot more than the former. It turns out, that Git GUI already calls into `git maintance` indirectly via `git merge` and `git fetch`. So, users who set gui.gcwarning to false (myself included) were already prone to occasional inadvertent cleanups.

So, users that are hurt by this new change are those where all these conditions are true:

- They make commits with Git GUI.
- They configure maintenance.* to do more cleanups than the default
confituration (which is the same as `git gc --auto`, I think).
- They never use one of `commit`, `am`, `fetch`, `merge`, `rebase` (and
possibly more) on the command line.
- They never use `git maintenance run` through some other facility.
- They never use Git GUI's "Local Merge" dialog.
- They never use Git GUI's "Fetch From" command.
- They still expect certain stale data to *not* be pruned.

How many could this be? Not many, I guess. The conservative safe approach would be to treat gui.gcwarning=false as an indication that automatic cleanup is not desired.

Show 29 quoted lines
> 
> Wolfgang Faust (4):
>   git-gui: run auto maintenance on commit
>   git-gui: remove hint_gc dialog
>   git-gui: remove "Compress Database" feature
>   scalar: remove obsolete gui.GCWarning setting
> 
>  Documentation/config/gui.adoc |  5 -----
>  Documentation/scalar.adoc     |  6 ------
>  git-gui/git-gui.sh            |  6 ------
>  git-gui/lib/commit.tcl        |  6 ++++++
>  git-gui/lib/database.tcl      | 40 -----------------------------------
>  git-gui/po/bg.po              | 22 -------------------
>  git-gui/po/de.po              | 27 -----------------------
>  git-gui/po/el.po              | 27 -----------------------
>  git-gui/po/fr.po              | 28 ------------------------
>  git-gui/po/hu.po              | 27 -----------------------
>  git-gui/po/it.po              | 26 -----------------------
>  git-gui/po/ja.po              | 26 -----------------------
>  git-gui/po/nb.po              | 27 -----------------------
>  git-gui/po/pt_br.po           | 27 -----------------------
>  git-gui/po/pt_pt.po           | 27 -----------------------
>  git-gui/po/ru.po              | 20 ------------------
>  git-gui/po/sv.po              | 27 -----------------------
>  git-gui/po/vi.po              | 27 -----------------------
>  git-gui/po/zh_cn.po           | 26 -----------------------
>  scalar.c                      |  1 -
>  t/t9210-scalar.sh             | 20 +++++++++---------
>  21 files changed, 16 insertions(+), 432 deletions(-)

Please separate the patches such that they modify either only files in the git-gui directory or only files outside it. The git-gui/ patches are applied to my repository at https://github.com/j6t/git-gui. Plan the patches such that the remaining patches can be applied later when my repository has been merged into the Git repository.

Please do not modify translation files. It's too much noise. They are only modified when new translations are contributed.

-- Hannes
Previous: Wolfgang FaustNext: Junio C Hamano
Message 15 of 22 in “git-gui: disable the "loose objects popup" dialog?”
  1. Birger Skogeng PedersenSep 26, 2019
  2. Johannes SixtSep 26, 2019
  3. Birger Skogeng PedersenSep 26, 2019
  4. Pratyush YadavSep 26, 2019
  5. Birger Skogeng PedersenSep 26, 2019
  6. Johannes SixtSep 26, 2019
  7. Pratyush YadavOct 1, 2019
  8. Birger Skogeng PedersenOct 2, 2019
  9. Johannes SixtOct 2, 2019
  10. 0/4 run auto maintenance in git-guiWolfgang Faust, Mar 6, 2026
  11. 1/4 git-gui: run auto maintenance on commitWolfgang Faust, Mar 6, 2026
  12. 2/4 git-gui: remove hint_gc dialogWolfgang Faust, Mar 6, 2026
  13. 3/4 git-gui: remove "Compress Database" featureWolfgang Faust, Mar 6, 2026
  14. 4/4 scalar: remove obsolete gui.GCWarning settingWolfgang Faust, Mar 6, 2026
  15. Johannes SixtMar 7, 2026
  16. Junio C HamanoMar 7, 2026
  17. Johannes SixtMar 7, 2026
  18. Junio C HamanoMar 8, 2026
  19. Wolfgang FaustMar 11, 2026
  20. Johannes SixtMar 13, 2026
  21. Marc BranchaudOct 2, 2019
  22. Marc BranchaudSep 26, 2019

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.