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

[PATCH] Remove all old packfiles when doing "git repack -a -d"

From
Lukas Sandström <lukass@etek.chalmers.se>
Date
Nov 18, 2005, 20:36 UTC
Message-ID
<437E3B3C.9000409@etek.chalmers.se>

No point in running git-pack-redundant if we already know which packs are redundant.

Signed-off-by: Lukas Sandström <lukass@etek.chalmers.se>
---
This should be correct. I even tested it.
 git-repack.sh |   19 ++++++++++++++++---
 1 files changed, 16 insertions(+), 3 deletions(-)

applies-to: 8c987c24bed7f7a30f4e74b12e8acc2cc5eeea93 2f49d2a3a7cf0fc64edfad2febf986252392b667

diff --git a/git-repack.sh b/git-repack.sh
index e58fdd6..55a7b27 100755
--- a/git-repack.sh
+++ b/git-repack.sh
@@ -63,9 +63,22 @@ exit
 if test "$remove_redundant" = t
 then
 	sync
-	redundant=$(git-pack-redundant --all)
-	if test "$redundant" != "" ; then
-		echo $redundant | xargs rm
+	if test "$all_into_one" = t
+	then
+		cd "$PACKDIR"
+		existing=`find . -type f \( -name '*.pack' -o -name '*.idx' \) -print`
+		for e in $existing
+		do
+			case "$e" in
+			./pack-$name.pack | ./pack-$name.idx) ;;
+			*)      rm -f $e ;;
+			esac
+		done
+	else
+		redundant=$(git-pack-redundant --all)
+		if test "$redundant" != "" ; then
+			echo $redundant | xargs rm
+		fi
 	fi
 fi
 
---
0.99.9.GIT
Next: Junio C Hamano
Message 1 of 2 in “Remove all old packfiles when doing "git repack -a -d"”
  1. Remove all old packfiles when doing "git repack -a -d"Lukas Sandström, Nov 18, 2005
  2. Junio C HamanoNov 18, 2005

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.