Re: [GSOC PATCH v2 2/2] builtin/prune: stop depending on 'the_repository'

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Jul 2, 2025 at 4:17 PM Patrick Steinhardt <ps@xxxxxx> wrote:
>
> On Tue, Jul 01, 2025 at 11:39:48PM +0530, Ayush Chandekar wrote:
> > On Tue, Jul 1, 2025 at 10:12 PM Junio C Hamano <gitster@xxxxxxxxx> wrote:
> > >
> > > Patrick Steinhardt <ps@xxxxxx> writes:
> > >
> > > > On Mon, Jun 30, 2025 at 10:11:05PM +0530, Ayush Chandekar wrote:
> > > >> @@ -173,20 +171,19 @@ int cmd_prune(int argc,
> > > >>      expire = TIME_MAX;
> > > >>      save_commit_buffer = 0;
> > > >>      disable_replace_refs();
> > > >> -    repo_init_revisions(the_repository, &revs, prefix);
> > > >> +    repo_init_revisions(repo, &revs, prefix);
> > > >
> > > > Does this work correctly when running outside of a repository? In
> > > > general `cmd_prune()` is not executed and would instead die as it is
> > > > declared as `RUN_SETUP`, without the `_GENTLY` suffix. But when the user
> > > > asks for help we may still execute the function with a NULL pointer.
> > >
> > > Good eyes.  "git prune -h" would safely exit in parse_options() in
> > > such a case, but this part happens before the parse_options() call.
> > >
> >
> > Thanks for pointing that out, Patrick. Right now, `parse_options()` is
> > called just after the `repo_init_revisions()`. I can move the call to
> > it before this.
> >
> > Although when I tried running "git prune -h", it still gave me the
> > expected output.
>
> Well, as long as it works and as long as we have a test somewhere that
> ensures it keeps working I'm happy.
To add to the testing part, I noticed that there is no test for
checking "git prune -h".

You(Ayush) can add that in "t/t1517-outside-repo.sh" there is a
similar test for that also in the file.
"test_expect_success 'update-server-info does not crash with -h" You
can check it out.

Usman
>
> Patrick
>





[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]

  Powered by Linux