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

Re: [GSoC][PATCH v2 2/3] cherry-pick/revert: add --skip option

From
PWPhillip Wood <phillip.wood123@gmail.com>
Date
Jun 12, 2019, 18:57 UTC
Message-ID
<5226cbc4-3dad-2fc8-b0b7-767119e40c64@gmail.com>
In-Reply-To
<xmqqsgseisgu.fsf@gitster-ct.c.googlers.com>
On 12/06/2019 19:11, Junio C Hamano wrote:
Show 31 quoted lines
> Phillip Wood <phillip.wood123@gmail.com> writes:
> 
>> Thanks for the new version, this is looking pretty good now, just a
>> few comments below
> 
> I agree that this step is looking pretty good now.
> 
> I didn't check closely, but when 1/3 undergoes necessary polishing,
> it may have repercussions on this step, though (I did see that the
> change in 3/3 would have overlaps with what was touched by 1/3 that
> needs to be done differently).
> 
> Thanks for guiding Rohit's series forward.
> 
>> This is only slightly different from reset_for_rollback() if you
>> decide to keep a separate code path for skip vs abort then I'd be
>> tempted to combine the two like this.
>>
>> diff --git a/sequencer.c b/sequencer.c
>> index ecf4be7e15..b187b4222e 100644
>> --- a/sequencer.c
>> +++ b/sequencer.c
>> @@ -2740,11 +2740,13 @@ static int reset_merge(void) {
>>   static int reset_for_rollback(const struct object_id *oid)
>>   {
>>          const char *argv[4];    /* reset --merge <arg> + NULL */
>> +       size_t i = 0;
> 
> That size_t is, eh, "unusual".  For an index into a small local
> array of known size, just sticking to bog-standard-and-boring 'int'
> would make it less distracting for future readers of the code.

Yes size_t is overkill here, it tends to be my default "array index" type but there's no need for it here.

> Or even better, perhaps use argv-array, so that you do not have to
> worry about sizing the local array sufficiently large in the first
> place.

That would be a much better way of doing it, I was so focussed on the existing code I didn't think of that.

Best Wishes
Phillip
Show 9 quoted lines
> 
>> +       argv[i++] = "reset";
>> +       argv[i++] = "--merge";
>> +       if (oid)
>> +               argv[i++] = oid_to_hex(oid);
>> +       argv[i] = NULL;
>>          return run_command_v_opt(argv, RUN_GIT_CMD);
>>   }
> 
Previous: Junio C HamanoNext: Rohit Ashiwal
Message 34 of 95 in “Teach cherry-pick/revert to skip commits”
  1. Rohit AshiwalJun 8, 2019
  2. [GSoC][PATCH 1/3] sequencer: add advice for revertRohit Ashiwal, Jun 8, 2019
  3. Phillip WoodJun 9, 2019
  4. Rohit AshiwalJun 10, 2019
  5. Phillip WoodJun 10, 2019
  6. Rohit AshiwalJun 10, 2019
  7. Phillip WoodJun 10, 2019
  8. Junio C HamanoJun 10, 2019
  9. [GSoC][PATCH 2/3] cherry-pick/revert: add --skip optionRohit Ashiwal, Jun 8, 2019
  10. Thomas GummererJun 9, 2019
  11. Phillip WoodJun 9, 2019
  12. Rohit AshiwalJun 10, 2019
  13. Phillip WoodJun 10, 2019
  14. Rohit AshiwalJun 10, 2019
  15. Phillip WoodJun 10, 2019
  16. [GSoC][PATCH 3/3] cherry-pick/revert: update hintsRohit Ashiwal, Jun 8, 2019
  17. Thomas GummererJun 9, 2019
  18. Phillip WoodJun 9, 2019
  19. Rohit AshiwalJun 10, 2019
  20. Phillip WoodJun 10, 2019
  21. Rohit AshiwalJun 10, 2019
  22. Phillip WoodJun 10, 2019
  23. Thomas GummererJun 9, 2019
  24. Rohit AshiwalJun 9, 2019
  25. Thomas GummererJun 9, 2019
  26. [GSoC][PATCH v2 0/3] Teach cherry-pick/revert to skip commitsRohit Ashiwal, Jun 11, 2019
  27. [GSoC][PATCH v2 1/3] sequencer: add advice for revertRohit Ashiwal, Jun 11, 2019
  28. Junio C HamanoJun 11, 2019
  29. [GSoC][PATCH v2 3/3] cherry-pick/revert: advise using --skipRohit Ashiwal, Jun 11, 2019
  30. Phillip WoodJun 12, 2019
  31. [GSoC][PATCH v2 2/3] cherry-pick/revert: add --skip optionRohit Ashiwal, Jun 11, 2019
  32. Phillip WoodJun 12, 2019
  33. Junio C HamanoJun 12, 2019
  34. Phillip WoodJun 12, 2019
  35. [GSoC][PATCH v3 0/3] Teach cherry-pick/revert to skip commitsRohit Ashiwal, Jun 13, 2019
  36. [GSoC][PATCH v3 3/3] cherry-pick/revert: advise using --skipRohit Ashiwal, Jun 13, 2019
  37. [GSoC][PATCH v3 2/3] cherry-pick/revert: add --skip optionRohit Ashiwal, Jun 13, 2019
  38. Junio C HamanoJun 13, 2019
  39. Junio C HamanoJun 13, 2019
  40. Rohit AshiwalJun 14, 2019
  41. Rohit AshiwalJun 14, 2019
  42. Junio C HamanoJun 14, 2019
  43. Rohit AshiwalJun 16, 2019
  44. Phillip WoodJun 13, 2019
  45. [GSoC][PATCH v3 1/3] sequencer: add advice for revertRohit Ashiwal, Jun 13, 2019
  46. Phillip WoodJun 13, 2019
  47. Martin ÅgrenJun 13, 2019
  48. Junio C HamanoJun 13, 2019
  49. Rohit AshiwalJun 14, 2019
  50. Rohit AshiwalJun 14, 2019
  51. [GSoC][PATCH v4 0/4] [GSoC][PATCH 0/3] Teach cherry-pick/revert to skip commitsRohit Ashiwal, Jun 16, 2019
  52. [GSoC][PATCH v4 1/4] sequencer: add advice for revertRohit Ashiwal, Jun 16, 2019
  53. Thomas GummererJun 17, 2019
  54. [GSoC][PATCH v4 2/4] sequencer: rename reset_for_rollback to reset_mergeRohit Ashiwal, Jun 16, 2019
  55. [GSoC][PATCH v4 3/4] cherry-pick/revert: add --skip optionRohit Ashiwal, Jun 16, 2019
  56. Thomas GummererJun 17, 2019
  57. [GSoC][PATCH v4 4/4] cherry-pick/revert: advise using --skipRohit Ashiwal, Jun 16, 2019
  58. Thomas GummererJun 17, 2019
  59. [GSoC][PATCH v5 0/5] Teach cherry-pick/revert to skip commitsRohit Ashiwal, Jun 18, 2019
  60. [GSoC][PATCH v5 1/5] sequencer: add advice for revertRohit Ashiwal, Jun 18, 2019
  61. [GSoC][PATCH v5 2/5] sequencer: rename reset_for_rollback to reset_mergeRohit Ashiwal, Jun 18, 2019
  62. [GSoC][PATCH v5 3/5] sequencer: use argv_array in reset_mergeRohit Ashiwal, Jun 18, 2019
  63. [GSoC][PATCH v5 4/5] cherry-pick/revert: add --skip optionRohit Ashiwal, Jun 18, 2019
  64. Junio C HamanoJun 20, 2019
  65. Rohit AshiwalJun 20, 2019
  66. Phillip WoodJun 20, 2019
  67. Junio C HamanoJun 20, 2019
  68. Phillip WoodJun 20, 2019
  69. Rohit AshiwalJun 20, 2019
  70. Phillip WoodJun 20, 2019
  71. Rohit AshiwalJun 21, 2019
  72. [GSoC][PATCH v5 5/5] cherry-pick/revert: advise using --skipRohit Ashiwal, Jun 18, 2019
  73. [GSoC][PATCH v6 0/5] Teach cherry-pick/revert to skip commitsRohit Ashiwal, Jun 21, 2019
  74. [GSoC][PATCH v6 1/5] sequencer: add advice for revertRohit Ashiwal, Jun 21, 2019
  75. [GSoC][PATCH v6 2/5] sequencer: rename reset_for_rollback to reset_mergeRohit Ashiwal, Jun 21, 2019
  76. [GSoC][PATCH v6 3/5] sequencer: use argv_array in reset_mergeRohit Ashiwal, Jun 21, 2019
  77. [GSoC][PATCH v6 4/5] cherry-pick/revert: add --skip optionRohit Ashiwal, Jun 21, 2019
  78. [GSoC][PATCH v6 5/5] cherry-pick/revert: advise using --skipRohit Ashiwal, Jun 21, 2019
  79. Junio C HamanoJun 21, 2019
  80. [GSoC][PATCH v7 0/6] Teach cherry-pick/revert to skip commitsRohit Ashiwal, Jun 23, 2019
  81. [GSoC][PATCH v7 1/6] advice: add sequencerInUse config variableRohit Ashiwal, Jun 23, 2019
  82. Thomas GummererJun 25, 2019
  83. [GSoC][PATCH v7 4/6] sequencer: use argv_array in reset_mergeRohit Ashiwal, Jun 23, 2019
  84. [GSoC][PATCH v7 2/6] sequencer: add advice for revertRohit Ashiwal, Jun 23, 2019
  85. Phillip WoodJun 29, 2019
  86. [GSoC][PATCH v7 3/6] sequencer: rename reset_for_rollback to reset_mergeRohit Ashiwal, Jun 23, 2019
  87. [GSoC][PATCH v7 5/6] cherry-pick/revert: add --skip optionRohit Ashiwal, Jun 23, 2019
  88. [GSoC][PATCH v7 6/6] cherry-pick/revert: advise using --skipRohit Ashiwal, Jun 23, 2019
  89. [GSoC][PATCH v8 0/5] Teach cherry-pick/revert to skip commitsRohit Ashiwal, Jul 2, 2019
  90. [GSoC][PATCH v8 1/5] sequencer: add advice for revertRohit Ashiwal, Jul 2, 2019
  91. [GSoC][PATCH v8 2/5] sequencer: rename reset_for_rollback to reset_mergeRohit Ashiwal, Jul 2, 2019
  92. [GSoC][PATCH v8 3/5] sequencer: use argv_array in reset_mergeRohit Ashiwal, Jul 2, 2019
  93. [GSoC][PATCH v8 4/5] cherry-pick/revert: add --skip optionRohit Ashiwal, Jul 2, 2019
  94. [GSoC][PATCH v8 5/5] cherry-pick/revert: advise using --skipRohit Ashiwal, Jul 2, 2019
  95. Phillip WoodJul 2, 2019

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.