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

[PATCH 3/4] git-gui: remove "Compress Database" feature

From
WFWolfgang Faust <contrib-git@wolfgangfaust.com>
Date
Mar 6, 2026, 05:32 UTC
Message-ID
<65650733-1597-469f-9a2a-7358abf10b4e@app.fastmail.com>
In-Reply-To
<091e68fa-428d-48b0-bf7d-42b01660d6eb@app.fastmail.com>

Now that git-gui runs auto maintenance on commit and we expect that users no longer need to manually compress the database on a regular basis, this feature is not necessary.

Signed-off-by: Wolfgang Faust <contrib-git@wolfgangfaust.com>
---
This patch is more to start discussion than something I think is necessarily a
good idea: maybe there are other circumstances where this is still useful?
 git-gui/git-gui.sh       |  3 ---
 git-gui/lib/database.tcl | 14 --------------
 git-gui/po/bg.po         |  6 ------
 git-gui/po/de.po         | 10 ----------
 git-gui/po/el.po         | 10 ----------
 git-gui/po/fr.po         | 10 ----------
 git-gui/po/hu.po         | 10 ----------
 git-gui/po/it.po         | 10 ----------
 git-gui/po/ja.po         | 10 ----------
 git-gui/po/nb.po         | 10 ----------
 git-gui/po/pt_br.po      | 10 ----------
 git-gui/po/pt_pt.po      | 10 ----------
 git-gui/po/ru.po         | 10 ----------
 git-gui/po/sv.po         | 10 ----------
 git-gui/po/vi.po         | 10 ----------
 git-gui/po/zh_cn.po      | 10 ----------
 16 files changed, 153 deletions(-)
diff --git a/git-gui/git-gui.sh b/git-gui/git-gui.sh
index 29b708f9c8..d2f3ff3e96 100755
--- a/git-gui/git-gui.sh
+++ b/git-gui/git-gui.sh
@@ -2652,9 +2652,6 @@ if {[is_enabled multicommit]} {
 	.mbar.repository add command -label [mc "Database Statistics"] \
 		-command do_stats
 
-	.mbar.repository add command -label [mc "Compress Database"] \
-		-command do_gc
-
 	.mbar.repository add command -label [mc "Verify Database"] \
 		-command do_fsck_objects
 
diff --git a/git-gui/lib/database.tcl b/git-gui/lib/database.tcl
index 9b4cc98df5..7edb45b5c8 100644
--- a/git-gui/lib/database.tcl
+++ b/git-gui/lib/database.tcl
@@ -29,11 +29,7 @@ proc do_stats {} {
 	ttk::button $w.buttons.close -text [mc Close] \
 		-default active \
 		-command [list destroy $w]
-	ttk::button $w.buttons.gc -text [mc "Compress Database"] \
-		-default normal \
-		-command "destroy $w;do_gc"
 	pack $w.buttons.close -side right
-	pack $w.buttons.gc -side left
 	pack $w.buttons -side bottom -fill x -pady 10 -padx 10
 
 	ttk::labelframe $w.stat -text [mc "Database Statistics"]
@@ -67,16 +63,6 @@ proc do_stats {} {
 	tkwait window $w
 }
 
-proc do_gc {} {
-	set w [console::new {gc} [mc "Compressing the object database"]]
-	console::chain $w {
-		{exec git pack-refs --prune}
-		{exec git reflog expire --all}
-		{exec git repack -a -d -l}
-		{exec git rerere gc}
-	}
-}
-
 proc do_fsck_objects {} {
 	set w [console::new {fsck-objects} \
 		[mc "Verifying the object database with fsck-objects"]]
diff --git a/git-gui/po/bg.po b/git-gui/po/bg.po
index 2670bbb4ef..c7f3e57a58 100644
--- a/git-gui/po/bg.po
+++ b/git-gui/po/bg.po
@@ -184,9 +184,6 @@ msgstr "Визуализация на историята на „%s“"
 msgid "Database Statistics"
 msgstr "Статистика на базата от данни"
 
-msgid "Compress Database"
-msgstr "Компресиране на базата от данни"
-
 msgid "Verify Database"
 msgstr "Проверка на базата от данни"
 
@@ -1161,9 +1158,6 @@ msgstr "%s:"
 msgid "%s (%s): Database Statistics"
 msgstr "%s (%s): Статистика на базата от данни"
 
-msgid "Compressing the object database"
-msgstr "Компресиране на базата с данни за обектите"
-
 msgid "Verifying the object database with fsck-objects"
 msgstr "Проверка на базата с данни за обектите с програмата „fsck-objects“"
 
diff --git a/git-gui/po/de.po b/git-gui/po/de.po
index 490ed25e0d..c9d197335e 100644
--- a/git-gui/po/de.po
+++ b/git-gui/po/de.po
@@ -246,11 +246,6 @@ msgstr "Historie von »%s« darstellen"
 #: git-gui.sh:2799 lib/database.tcl:40
 msgid "Database Statistics"
 msgstr "Datenbankstatistik"
-
-#: git-gui.sh:2802 lib/database.tcl:33
-msgid "Compress Database"
-msgstr "Datenbank komprimieren"
-
 #: git-gui.sh:2805
 msgid "Verify Database"
 msgstr "Datenbank überprüfen"
@@ -2673,11 +2668,6 @@ msgstr "Dateien im Mülleimer"
 #, tcl-format
 msgid "%s (%s): Database Statistics"
 msgstr "%s (%s): Datenbankstatistik"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "Objektdatenbank komprimieren"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "Die Objektdatenbank durch »fsck-objects« überprüfen lassen"
diff --git a/git-gui/po/el.po b/git-gui/po/el.po
index 1c77b98b14..5f780f4c5b 100644
--- a/git-gui/po/el.po
+++ b/git-gui/po/el.po
@@ -197,11 +197,6 @@ msgstr "Απεικόνιση Ιστορικού του %s"
 #: git-gui.sh:1906 lib/database.tcl:27 lib/database.tcl:67
 msgid "Database Statistics"
 msgstr "Στατιστικά Βάσης Δεδομένων"
-
-#: git-gui.sh:1909 lib/database.tcl:34
-msgid "Compress Database"
-msgstr "Συμπίεση Βάσης Δεδομένων"
-
 #: git-gui.sh:1912
 msgid "Verify Database"
 msgstr "Επαλήθευση Βάσης Δεδομένων"
@@ -1400,11 +1395,6 @@ msgstr "Πακεταρισμένα αντικείμενα έτοιμα για κ
 #: lib/database.tcl:49
 msgid "Garbage files"
 msgstr "Άχρηστα αρχεία"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "Γίνεται συμπίεση της βάσης δεδομένων αντικειμένων"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr ""
diff --git a/git-gui/po/fr.po b/git-gui/po/fr.po
index 9da3e09ba2..d0354ed8ff 100644
--- a/git-gui/po/fr.po
+++ b/git-gui/po/fr.po
@@ -227,11 +227,6 @@ msgstr "Voir l'historique de la branche : %s"
 #: git-gui.sh:2510 lib/database.tcl:27 lib/database.tcl:67
 msgid "Database Statistics"
 msgstr "Statistiques du dépôt"
-
-#: git-gui.sh:2513 lib/database.tcl:34
-msgid "Compress Database"
-msgstr "Comprimer le dépôt"
-
 #: git-gui.sh:2516
 msgid "Verify Database"
 msgstr "Vérifier le dépôt"
@@ -1547,11 +1542,6 @@ msgstr "Objets empaquetés attendant d'être supprimés"
 #: lib/database.tcl:49
 msgid "Garbage files"
 msgstr "Fichiers poubelle"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "Compression de la base des objets"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "Vérification de la base des objets avec fsck-objects"
diff --git a/git-gui/po/hu.po b/git-gui/po/hu.po
index 4404af74d6..8141ab13f3 100644
--- a/git-gui/po/hu.po
+++ b/git-gui/po/hu.po
@@ -215,11 +215,6 @@ msgstr "A(z) %s branch történetének vizualizálása"
 #: git-gui.sh:2334 lib/database.tcl:27 lib/database.tcl:67
 msgid "Database Statistics"
 msgstr "Adatbázis statisztikák"
-
-#: git-gui.sh:2337 lib/database.tcl:34
-msgid "Compress Database"
-msgstr "Adatbázis tömörítése"
-
 #: git-gui.sh:2340
 msgid "Verify Database"
 msgstr "Adatbázis ellenőrzése"
@@ -1496,11 +1491,6 @@ msgstr "Eltávolításra váró csomagolt objektumok számra"
 #: lib/database.tcl:49
 msgid "Garbage files"
 msgstr "Hulladék fájlok"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "Az objektum adatbázis tömörítése"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "Az objektum adatbázis ellenőrzése az fsck-objects használatával"
diff --git a/git-gui/po/it.po b/git-gui/po/it.po
index b590dfbbd0..6e9b8d97b7 100644
--- a/git-gui/po/it.po
+++ b/git-gui/po/it.po
@@ -225,11 +225,6 @@ msgstr "Visualizza la cronologia di %s"
 #: git-gui.sh:2510 lib/database.tcl:27 lib/database.tcl:67
 msgid "Database Statistics"
 msgstr "Statistiche dell'archivio"
-
-#: git-gui.sh:2513 lib/database.tcl:34
-msgid "Compress Database"
-msgstr "Comprimi l'archivio"
-
 #: git-gui.sh:2516
 msgid "Verify Database"
 msgstr "Verifica l'archivio"
@@ -1543,11 +1538,6 @@ msgstr "Oggetti impacchettati che attendono la potatura"
 #: lib/database.tcl:49
 msgid "Garbage files"
 msgstr "File inutili"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "Compressione dell'archivio in corso"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "Verifica dell'archivio con fsck-objects in corso"
diff --git a/git-gui/po/ja.po b/git-gui/po/ja.po
index d52bcd7f8c..31b59c8e58 100644
--- a/git-gui/po/ja.po
+++ b/git-gui/po/ja.po
@@ -246,11 +246,6 @@ msgstr "ブランチ %s の履歴を見る"
 #: git-gui.sh:2719 lib/database.tcl:40 lib/database.tcl:66
 msgid "Database Statistics"
 msgstr "データベース統計"
-
-#: git-gui.sh:2722 lib/database.tcl:33
-msgid "Compress Database"
-msgstr "データベース圧縮"
-
 #: git-gui.sh:2725
 msgid "Verify Database"
 msgstr "データベース検証"
@@ -1930,11 +1925,6 @@ msgstr "パックに存在するので捨てて良いオブジェクトの数"
 #: lib/database.tcl:48
 msgid "Garbage files"
 msgstr "ゴミファイル"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "データベース圧縮"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "fsck-objects でオブジェクト・データベースを検証しています"
diff --git a/git-gui/po/nb.po b/git-gui/po/nb.po
index 4b6e5136b0..41b8eb9b51 100644
--- a/git-gui/po/nb.po
+++ b/git-gui/po/nb.po
@@ -215,11 +215,6 @@ msgstr "Visualiser historien til %s"
 #: git-gui.sh:2334 lib/database.tcl:27 lib/database.tcl:67
 msgid "Database Statistics"
 msgstr "Databasestatistikk"
-
-#: git-gui.sh:2337 lib/database.tcl:34
-msgid "Compress Database"
-msgstr "Kompress databasen"
-
 #: git-gui.sh:2340
 msgid "Verify Database"
 msgstr "Verifiser databasen"
@@ -1453,11 +1448,6 @@ msgstr "Pakkede objekter som avventer fjerning"
 #: lib/database.tcl:49
 msgid "Garbage files"
 msgstr "Avfallsfiler"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "Komprimerer objektdatabasen"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "Verifiserer objektdatabasen med fsck-objects"
diff --git a/git-gui/po/pt_br.po b/git-gui/po/pt_br.po
index 8580aaaece..327708b511 100644
--- a/git-gui/po/pt_br.po
+++ b/git-gui/po/pt_br.po
@@ -223,11 +223,6 @@ msgstr "Visualizar histórico de %s"
 #: git-gui.sh:2510 lib/database.tcl:27 lib/database.tcl:67
 msgid "Database Statistics"
 msgstr "Estatísticas do banco de dados"
-
-#: git-gui.sh:2513 lib/database.tcl:34
-msgid "Compress Database"
-msgstr "Compactar banco de dados"
-
 #: git-gui.sh:2516
 msgid "Verify Database"
 msgstr "Verificar banco de dados"
@@ -1532,11 +1527,6 @@ msgstr "Objetos compactados aguardando eliminação"
 #: lib/database.tcl:49
 msgid "Garbage files"
 msgstr "Arquivos de lixo"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "Compactando banco de dados de objetos"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "Verificando banco de dados de objetos com fsck-objects"
diff --git a/git-gui/po/pt_pt.po b/git-gui/po/pt_pt.po
index e6354ce5c0..498700c91f 100644
--- a/git-gui/po/pt_pt.po
+++ b/git-gui/po/pt_pt.po
@@ -247,11 +247,6 @@ msgstr "Visualizar histórico de %s"
 #: git-gui.sh:2719 lib/database.tcl:40 lib/database.tcl:66
 msgid "Database Statistics"
 msgstr "Estatísticas da base de dados"
-
-#: git-gui.sh:2722 lib/database.tcl:33
-msgid "Compress Database"
-msgstr "Comprimir base de dados"
-
 #: git-gui.sh:2725
 msgid "Verify Database"
 msgstr "Verificar base de dados"
@@ -2528,11 +2523,6 @@ msgstr "Objetos compactados à espera de poda"
 #: lib/database.tcl:48
 msgid "Garbage files"
 msgstr "Ficheiros de lixo"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "A comprimir a base de dados de objetos"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "A verificar a base de dados de objetos com fsck-objects"
diff --git a/git-gui/po/ru.po b/git-gui/po/ru.po
index 4761cc1adb..8151f02d8a 100644
--- a/git-gui/po/ru.po
+++ b/git-gui/po/ru.po
@@ -238,11 +238,6 @@ msgstr "Показать историю ветки %s"
 #: git-gui.sh:2799 lib/database.tcl:40
 msgid "Database Statistics"
 msgstr "Статистика базы данных"
-
-#: git-gui.sh:2802 lib/database.tcl:33
-msgid "Compress Database"
-msgstr "Сжать базу данных"
-
 #: git-gui.sh:2805
 msgid "Verify Database"
 msgstr "Проверить базу данных"
@@ -2498,11 +2493,6 @@ msgstr "Мусор"
 #, tcl-format
 msgid "%s (%s): Database Statistics"
 msgstr "%s (%s): Статистика базы данных"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "Сжатие базы объектов"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "Проверка базы объектов при помощи fsck"
diff --git a/git-gui/po/sv.po b/git-gui/po/sv.po
index 06835f133a..9509fcda0a 100644
--- a/git-gui/po/sv.po
+++ b/git-gui/po/sv.po
@@ -252,11 +252,6 @@ msgstr "Visualisera historik för %s"
 #: git-gui.sh:2824 lib/database.tcl:40
 msgid "Database Statistics"
 msgstr "Databasstatistik"
-
-#: git-gui.sh:2827 lib/database.tcl:33
-msgid "Compress Database"
-msgstr "Komprimera databas"
-
 #: git-gui.sh:2830
 msgid "Verify Database"
 msgstr "Verifiera databas"
@@ -1603,11 +1598,6 @@ msgstr "%s:"
 #, tcl-format
 msgid "%s (%s): Database Statistics"
 msgstr "%s (%s): Databasstatistik"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "Komprimerar objektdatabasen"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "Verifierar objektdatabasen med fsck-objects"
diff --git a/git-gui/po/vi.po b/git-gui/po/vi.po
index ad0ec7816c..67b9ee534f 100644
--- a/git-gui/po/vi.po
+++ b/git-gui/po/vi.po
@@ -248,11 +248,6 @@ msgstr "Duyệt lịch sử của %s trực quan"
 #: git-gui.sh:2713 lib/database.tcl:40 lib/database.tcl:66
 msgid "Database Statistics"
 msgstr "Thống kê cơ sở dữ liệu"
-
-#: git-gui.sh:2716 lib/database.tcl:33
-msgid "Compress Database"
-msgstr "Nén cơ sở dữ liệu"
-
 #: git-gui.sh:2719
 msgid "Verify Database"
 msgstr "Thẩm tra cơ sở dữ liệu"
@@ -1589,11 +1584,6 @@ msgstr "Các đối tượng gói chờ xén bớt"
 #: lib/database.tcl:48
 msgid "Garbage files"
 msgstr "Các tập tin rác"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "Nén cơ sở dữ liệu đối tượng"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "Đang kiểm tra cơ sở dữ liệu đối tượng bằng lệnh fsck"
diff --git a/git-gui/po/zh_cn.po b/git-gui/po/zh_cn.po
index 4412d4ea44..f7d290af7d 100644
--- a/git-gui/po/zh_cn.po
+++ b/git-gui/po/zh_cn.po
@@ -214,11 +214,6 @@ msgstr "图示 %s 分支的历史"
 #: git-gui.sh:1906 lib/database.tcl:27 lib/database.tcl:67
 msgid "Database Statistics"
 msgstr "数据库统计信息"
-
-#: git-gui.sh:1909 lib/database.tcl:34
-msgid "Compress Database"
-msgstr "压缩数据库"
-
 #: git-gui.sh:1912
 msgid "Verify Database"
 msgstr "验证数据库"
@@ -1379,11 +1374,6 @@ msgstr "压缩对象等待清理"
 #: lib/database.tcl:49
 msgid "Garbage files"
 msgstr "垃圾文件"
-
-#: lib/database.tcl:72
-msgid "Compressing the object database"
-msgstr "压缩对象数据库"
-
 #: lib/database.tcl:83
 msgid "Verifying the object database with fsck-objects"
 msgstr "使用 fsck-objects 验证对象数据库"
-- 
2.52.0
Previous: Wolfgang FaustNext: Wolfgang Faust
Message 13 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.