From: Martin Langhoff <martin@catalyst.net.nz>
To: git@vger.kernel.org, junkio@cox.net
Cc: Martin Langhoff <martin@catalyst.net.nz>
Subject: [RFC] git-fetch - repack in the background after fetching
Date: Sat, 24 Jun 2006 23:30:00 +1200 [thread overview]
Message-ID: <11511486003924-git-send-email-martin@catalyst.net.nz> (raw)
Check whether we have a large set of unpacked objects and repack
after the fetch, but don't for the user to wait for us. Conditional
on core.autorepack =! no.
Having ' handle concurrent pruning of packed objects'
(637cdd9d1d997fca34a1fc668fed1311e30fe95f) from Jeff King it should
be safe to repack and prune in the background.
Signed-off-by: Martin Langhoff <martin@catalyst.net.nz>
---
This is a follow up to a similar patch earlier
http://www.gelato.unsw.edu.au/archives/git/0605/21401.html -- is there
interest in making GIT more friendly to users who don't know or care
about packing and repacking their repos?
I loathe to do this conditionally only on the count of unpacked
objects. If there's a quick'n'dirty way of asking portably whether
the machine is busy or otherwise resource-constrained (ie: on battery)
it should use it to avoid running repack at inconvenient times.
---
git-fetch.sh | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/git-fetch.sh b/git-fetch.sh
index 48818f8..7211318 100755
--- a/git-fetch.sh
+++ b/git-fetch.sh
@@ -427,3 +427,12 @@ case ",$update_head_ok,$orig_head," in
fi
;;
esac
+
+if test "$(git-repo-config --get core.autorepack)" != 'no'
+then
+ if test $(git rev-list --unpacked --all | wc -l) -gt 1000
+ then
+ echo "Repacking in the background"
+ nice git repack -a -d -q &
+ fi
+fi
--
1.4.1.rc1.g59c8
next reply other threads:[~2006-06-24 11:30 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-06-24 11:30 Martin Langhoff [this message]
2006-06-25 3:12 ` [RFC] git-fetch - repack in the background after fetching Junio C Hamano
2006-06-25 10:10 ` [PATCH] Repack should try to prevent itself from running twice, concurrently Ryan Anderson
2006-06-25 10:17 ` Johannes Schindelin
2006-06-25 3:53 ` [RFC] git-fetch - repack in the background after fetching Linus Torvalds
2006-06-25 9:25 ` Johannes Schindelin
2006-06-25 17:29 ` Linus Torvalds
-- strict thread matches above, loose matches on Subject: below --
2006-06-25 17:53 linux
2006-05-30 4:42 Martin Langhoff
2006-05-30 4:51 ` Linus Torvalds
2006-05-30 5:14 ` Martin Langhoff
2006-05-30 6:37 ` Daniel Barkalow
2006-05-30 14:53 ` Linus Torvalds
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=11511486003924-git-send-email-martin@catalyst.net.nz \
--to=martin@catalyst.net.nz \
--cc=git@vger.kernel.org \
--cc=junkio@cox.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.