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

From: "Wolfgang Faust" <[email-masked]>
Date: Thu, 05 Mar 2026 21:32:04 -0800

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 <[email-masked]>
---
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