On Mon, Jun 17, 2019 at 03:32:34PM -0700, Junio C Hamano wrote:
> Emily Shaffer <[email protected]> writes:
>
> > Allow easier parsing by cat-file by giving rev-list an option to print
> > only the OID of a non-commit object without any additional information.
> > This is a short-term shim; later on, rev-list should be taught how to
> > print the types of objects it finds in a format similar to cat-file's.
> >
> > Before this commit, the output from rev-list needed to be massaged
> > before being piped to cat-file, like so:
> >
> > git rev-list --objects HEAD | cut -f 1 -d ' ' \
> > | git cat-file --batch-check
>
> Write this with '|' at the end of the first line; that way the shell
> knows you haven't finished your sentence without any backslash.
Oh cool. Will do.
>
> > diff --git a/builtin/rev-list.c b/builtin/rev-list.c
> > index 660172b014..7e2598fd22 100644
> > --- a/builtin/rev-list.c
> > +++ b/builtin/rev-list.c
> > @@ -49,6 +49,7 @@ static const char rev_list_usage[] =
> > " --objects | --objects-edge\n"
> > " --unpacked\n"
> > " --header | --pretty\n"
> > +" --no-object-names\n"
>
> Ideally, this should be "--[no-]object-names", i.e. --object-names
> which may be the default when using --objects could be tweaked with
> --no-object-names and then again turned on with a --object-names
> later on the command line, following the usual "last one wins".
Sure, good point. Will fix.
>
> > @@ -75,6 +76,9 @@ enum missing_action {
> > };
> > static enum missing_action arg_missing_action;
> >
> > +/* display only the oid of each object encountered */
> > +static int arg_no_object_names;
>
> And this would become
>
> static int show_object_names = 1;
>
> that can be turned off via --no-object-names (and --object-names
> would flip it on). It would reduce the double negation brain
> twister, hopefully.
>
I'll send a new patch today. Thanks.
- Emily