git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: [PATCH v2 7/7] bisect: allows any terms set by user

From
Matthieu Moy <matthieu.moy@grenoble-inp.fr>
Date
Jun 11, 2015, 09:22 UTC
Message-ID
<vpqoakmoaz7.fsf@anie.imag.fr>
In-Reply-To
<xmqqk2vbi7rf.fsf@gitster.dls.corp.google.com>
Junio C Hamano <gitster@pobox.com> writes:
Show 10 quoted lines
> Antoine Delaite <antoine.delaite@ensimag.grenoble-inp.fr> writes:
>
>> -USAGE='[help|start|bad|good|new|old|skip|next|reset|visualize|replay|log|run]'
>> +USAGE='[help|start|bad|good|new|old|terms|skip|next|reset|visualize|replay|log|run]'
>
> I think this patch makes the whole series go in the right direction.
>
> I wonder if you can skip the "we only support new/old if you are not
> doing bog-standard bad/good" step and start from this "bisect terms"
> one, though.

While I think we should not hardcode too much in the code, I also think it makes sense to have hardcoded old/new in the user-interface. If you give me just

  git bisect terms <first-term> <second-term>

then half of the times, I'll use old/new in the wrong order. And if I hadn't looked to bisect close enough, I'd even complain that the terms are not usable interchangeably.

At least, a in a flow like
  git bisect start
  git bisect new
  git checkout <old-sha>
  git bisect old
there's no ambiguity.

So, to me, having both hardcoded old/new (unambiguous) and "git bisect terms" (for flexibility) makes sense.

Another important parameter: the students are finishing their project tomorrow. They may continue on their personnal free time, but at best their time budget is considerably reduced, and from my past experience, the time budget usually reaches 0. That's not a reason to merge bad code in git.git, but an incentive to close the series with something going in the right direction. Typically:

>  - preliminary clean-up steps (e.g. "correct 'mistook'");
This is straightforward
>  - use $name_new and $name_old throughout the code, giving them
>    'bad' and 'good' as hardcoded values; finally

This is relatively uncontroversial, and should be easy to finish. I would consider it a good thing anyway.

>  - add 'bisect terms' support.

I'd put this on the low-priority whishlist. If the codebase is ready and a preliminary patch exists, it will be relatively easy for someone else to finish the job.

-- 
Matthieu Moy
http://www-verimag.imag.fr/~moy/
Previous: Junio C HamanoNext: Junio C Hamano
Message 8 of 23 in “bisect: change read_bisect_terms parameters”
  1. 5/7 bisect: change read_bisect_terms parametersAntoine Delaite, Jun 10, 2015
  2. 6/7 revision: fix rev-list --bisect in old/new modeAntoine Delaite, Jun 10, 2015
  3. 7/7 bisect: allows any terms set by userAntoine Delaite, Jun 10, 2015
  4. Junio C HamanoJun 10, 2015
  5. Junio C HamanoJun 10, 2015
  6. Matthieu MoyJun 11, 2015
  7. Junio C HamanoJun 11, 2015
  8. Matthieu MoyJun 11, 2015
  9. Junio C HamanoJun 11, 2015
  10. Matthieu MoyJun 11, 2015
  11. Louis-Alexandre StuberJun 14, 2015
  12. 7/7 bisect: allows any terms set by userAntoine Delaite, Jun 14, 2015
  13. Matthieu MoyJun 15, 2015
  14. Junio C HamanoJun 15, 2015
  15. 7/7 bisect: allows any terms set by userAntoine Delaite, Jun 16, 2015
  16. Matthieu MoyJun 17, 2015
  17. 7/7 bisect: allows any terms set by userAntoine Delaite, Jun 17, 2015
  18. Matthieu MoyJun 17, 2015
  19. 7/7 bisect: allows any terms set by userAntoine Delaite, Jun 14, 2015
  20. 7/7 bisect: allows any terms set by userAntoine Delaite, Jun 14, 2015
  21. Matthieu MoyJun 15, 2015
  22. Matthieu MoyJun 15, 2015
  23. 7/7 bisect: allows any terms set by userAntoine Delaite, Jun 16, 2015

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.