# [PATCH 1/8] git-repack --max-pack-size: add new file statics

3 messages from 2007-04-30 to 2007-05-01. Participants: Dana How, Junio C Hamano.
Thread: https://gitlist.dev/t/7913

## Dana How, 2007-04-30 23:17

Subject: [PATCH 1/8] git-repack --max-pack-size: add new file statics
Message-ID: <4636790C.5060908@gmail.com>
URL: https://gitlist.dev/e/4636790C.5060908%40gmail.com

```

This adds "pack_size_limit", which will contain the limit
specified by --max-pack-size, "written_list", the actual
list of objects written to the current pack, and "nr_written",
the number of objects in written_list.

Signed-off-by: Dana L. How <danahow@gmail.com>
---
 builtin-pack-objects.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/builtin-pack-objects.c b/builtin-pack-objects.c
index b827627..ac2c15e 100644
--- a/builtin-pack-objects.c
+++ b/builtin-pack-objects.c
@@ -52,7 +52,8 @@ struct object_entry {
  * nice "minimum seek" order.
  */
 static struct object_entry *objects;
-static uint32_t nr_objects, nr_alloc, nr_result;
+static struct object_entry **written_list;
+static uint32_t nr_objects, nr_alloc, nr_result, nr_written;
 
 static int non_empty;
 static int no_reuse_delta;
@@ -64,6 +65,7 @@ static char tmpname[PATH_MAX];
 static unsigned char pack_file_sha1[20];
 static int progress = 1;
 static int window = 10;
+static uint32_t pack_size_limit;
 static int pack_to_stdout;
 static int num_preferred_base;
 static struct progress progress_state;
-- 
1.5.2.rc0.766.gba60-dirty

```

## Junio C Hamano, 2007-05-01 04:11

Subject: Re: [PATCH 1/8] git-repack --max-pack-size: add new file statics
Message-ID: <7vzm4p89op.fsf@assigned-by-dhcp.cox.net>
URL: https://gitlist.dev/e/7vzm4p89op.fsf%40assigned-by-dhcp.cox.net
In-Reply-To: <4636790C.5060908@gmail.com>

```
Dana How <danahow@gmail.com> writes:

> This adds "pack_size_limit", which will contain the limit
> specified by --max-pack-size, "written_list", the actual
> list of objects written to the current pack, and "nr_written",
> the number of objects in written_list.
>
> Signed-off-by: Dana L. How <danahow@gmail.com>
> ---
>  builtin-pack-objects.c |    4 +++-
>  1 files changed, 3 insertions(+), 1 deletions(-)
>
> diff --git a/builtin-pack-objects.c b/builtin-pack-objects.c
> index b827627..ac2c15e 100644
> --- a/builtin-pack-objects.c
> +++ b/builtin-pack-objects.c
> @@ -52,7 +52,8 @@ struct object_entry {
>   * nice "minimum seek" order.
>   */
>  static struct object_entry *objects;
> -static uint32_t nr_objects, nr_alloc, nr_result;
> +static struct object_entry **written_list;
> +static uint32_t nr_objects, nr_alloc, nr_result, nr_written;
>  
>  static int non_empty;
>  static int no_reuse_delta;
> @@ -64,6 +65,7 @@ static char tmpname[PATH_MAX];
>  static unsigned char pack_file_sha1[20];
>  static int progress = 1;
>  static int window = 10;
> +static uint32_t pack_size_limit;
>  static int pack_to_stdout;
>  static int num_preferred_base;
>  static struct progress progress_state;
> -- 
> 1.5.2.rc0.766.gba60-dirty

This by itself does not seem to do anything (no logic, no
command line option parsing, nothing).  Why is this a separate
patch?

```

## Dana How, 2007-05-01 04:43

Subject: Re: [PATCH 1/8] git-repack --max-pack-size: add new file statics
Message-ID: <56b7f5510704302143i79aef70dg95ffa23c3138663a@mail.gmail.com>
URL: https://gitlist.dev/e/56b7f5510704302143i79aef70dg95ffa23c3138663a%40mail.gmail.com
In-Reply-To: <7vzm4p89op.fsf@assigned-by-dhcp.cox.net>

```
On 4/30/07, Junio C Hamano <junkio@cox.net> wrote:
> Dana How <danahow@gmail.com> writes:
> > This adds "pack_size_limit", which will contain the limit
> > specified by --max-pack-size, "written_list", the actual
> > list of objects written to the current pack, and "nr_written",
> > the number of objects in written_list.
> > ---
> >  builtin-pack-objects.c |    4 +++-
> >
> > diff --git a/builtin-pack-objects.c b/builtin-pack-objects.c
> > --- a/builtin-pack-objects.c
> > +++ b/builtin-pack-objects.c
> > @@ -52,7 +52,8 @@ struct object_entry {
> > -static uint32_t nr_objects, nr_alloc, nr_result;
> > +static struct object_entry **written_list;
> > +static uint32_t nr_objects, nr_alloc, nr_result, nr_written;
> > @@ -64,6 +65,7 @@ static char tmpname[PATH_MAX];
> > +static uint32_t pack_size_limit;
>
> This by itself does not seem to do anything (no logic, no
> command line option parsing, nothing).  Why is this a separate
> patch?

Remember this all started with me submitting
one monolithic patch which attracted some complaints.
After that,  I broke the changes into patchsets
with 3 kinds of patches:
(a) Changes (addtitions) to data structures and declarations;
(b) Code restructuring and added forward function declarations
     adding _no_ functionality;
(c) Added functionality, (almost) one function at a time.

So 1/8 is the only member of group (a).
Previously there were more changes in (a).

I'm working on another change/feature. Based on your email,
I will merge groups (a) and (b) in future patchsets.

Thanks,
-- 
Dana L. How  danahow@gmail.com  +1 650 804 5991 cell

```
