From: Junio C Hamano <junkio@cox.net>
To: Nicolas Pitre <nico@cam.org>
Cc: Theodore Ts'o <tytso@mit.edu>, Git Mailing List <git@vger.kernel.org>
Subject: Re: [PATCH] Add --no-reuse-delta, --window, and --depth options to
Date: Tue, 08 May 2007 14:12:56 -0700 [thread overview]
Message-ID: <7vwszj10kn.fsf@assigned-by-dhcp.cox.net> (raw)
In-Reply-To: <alpine.LFD.0.99.0705081005400.24220@xanadu.home> (Nicolas Pitre's message of "Tue, 08 May 2007 11:30:31 -0400 (EDT)")
Nicolas Pitre <nico@cam.org> writes:
> In which case, it is git-gc that needs to get a bit smarter. Maybe
> something like this:
I agree git-gc should be tuned to "one size fits all well enough"
default, rather than getting more complicated parameters to fine
tune its behaviour to satisfy power users.
> @@ -65,7 +65,20 @@ int cmd_gc(int argc, const char **argv, const char *prefix)
> if (run_command_v_opt(argv_reflog, RUN_GIT_CMD))
> return error(FAILED_RUN, argv_reflog[0]);
>
> - if (run_command_v_opt(argv_repack, RUN_GIT_CMD))
> + if (num_loose_objects() > 0) {
> + do_repack = 1;
> + } else {
> + struct packed_git *p;
> + unsigned long num_pack = 0;
> + if (!packed_git)
> + prepare_packed_git();
> + for (p = packed_git; p; p = p->next)
> + if (p->pack_local)
> + num_pack++;
> + if (num_pack > 1)
> + do_repack = 1;
> + }
> + if (do_repack && run_command_v_opt(argv_repack, RUN_GIT_CMD))
> return error(FAILED_RUN, argv_repack[0]);
>
> if (prune && run_command_v_opt(argv_prune, RUN_GIT_CMD))
Is this even correct?
When your repository is fully packed, if you decided to discard
one of your topic branches with "git branch -D", what does this
code do? We see no loose objects, we see only one pack, so the
unreachable objects are left in the pack?
next prev parent reply other threads:[~2007-05-08 21:13 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-08 2:54 [PATCH] Add --no-reuse-delta, --window, and --depth options to git-gc Theodore Ts'o
2007-05-08 3:13 ` Nicolas Pitre
2007-05-08 3:21 ` Theodore Tso
2007-05-08 3:38 ` Dana How
2007-05-08 4:43 ` Junio C Hamano
2007-05-08 13:46 ` Nicolas Pitre
2007-05-08 13:28 ` [PATCH] Add --no-reuse-delta, --window, and --depth options to Theodore Ts'o
2007-05-08 13:28 ` [PATCH] Add pack.depth option to git-pack-objects and change default depth to 50 Theodore Ts'o
2007-05-08 13:28 ` [PATCH] Add --no-reuse-delta option to git-gc Theodore Ts'o
2007-05-08 15:35 ` Nicolas Pitre
2007-05-09 5:05 ` Daniel Barkalow
2007-05-09 8:15 ` Junio C Hamano
2007-05-09 9:02 ` Steven Grimm
2007-05-09 11:35 ` Other compression?, was " Johannes Schindelin
2007-05-09 15:15 ` Junio C Hamano
2007-05-09 19:10 ` Shawn O. Pearce
2007-06-10 7:40 ` Sam Vilain
2007-06-11 1:51 ` Nicolas Pitre
2007-06-11 6:20 ` Steven Grimm
2007-06-11 6:31 ` Shawn O. Pearce
2007-06-11 10:20 ` Johannes Schindelin
2007-06-11 14:01 ` Nicolas Pitre
2007-06-11 21:40 ` Johannes Schindelin
2007-05-09 19:48 ` [PATCH] Add --aggressive option to 'git gc' Theodore Tso
2007-05-09 20:19 ` Junio C Hamano
2007-05-09 22:22 ` Theodore Tso
2007-05-10 7:38 ` Junio C Hamano
2007-05-08 15:38 ` [PATCH] Add pack.depth option to git-pack-objects and change default depth to 50 Nicolas Pitre
2007-05-08 16:30 ` Theodore Tso
2007-05-08 16:49 ` Johannes Schindelin
2007-05-08 18:09 ` Theodore Tso
2007-05-08 18:46 ` Nicolas Pitre
2007-05-09 13:49 ` Theodore Tso
2007-05-09 14:17 ` Johannes Schindelin
2007-05-08 17:07 ` Dana How
2007-05-08 17:35 ` Nicolas Pitre
2007-05-09 5:03 ` Junio C Hamano
2007-05-08 15:30 ` [PATCH] Add --no-reuse-delta, --window, and --depth options to Nicolas Pitre
2007-05-08 21:12 ` Junio C Hamano [this message]
2007-05-08 23:59 ` Nicolas Pitre
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
List information: http://vger.kernel.org/majordomo-info.html
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=7vwszj10kn.fsf@assigned-by-dhcp.cox.net \
--to=junkio@cox.net \
--cc=git@vger.kernel.org \
--cc=nico@cam.org \
--cc=tytso@mit.edu \
/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.
Code repositories for project(s) associated with this public inbox
https://80x24.org/mirrors/git.git
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).