Week 3: preparation of patch series


Studying files related to git bisect I detected some parts that could be improved. After discussing my suggestions with my mentor, I included them in my working branch.

  1. Something I detected in builtin/bisect--helper.c and bisect.c was a mix of same evaluation conditions with different conventions.

    In some cases:

    if (!example_int_var)

    was used and in others:

    if (example_int_var == 0)

    I asked my mentor which one followed Git’s convention, which turned out to be the first one, and I fixed it.

  2. Something else related with one of my latest patches was that there were some other char pointers that could be changed to char arrays for the same reasons. So I changed them and squashed both commits.

  3. Testing git bisect--helper command, I detected that with new changes and options added in previous work, there was some translations to spanish that needed to be added and others needed to be fixed. As I am native spanish I am also doing these translations in a separate branch in order to incorporate them when the code is integrated.

  4. Also I found that there were many harcoded strings and integer return codes. As this issue seems to be a little controversial among developers, nothing has been done in this respect yet.


After a first rebasing on week 2, this third week has had a lot more rebasing: amending commit messages, splitting commit into parts, squashing commits and a lots of reordering. Different states were saved in separated branches as backup in case something goes wrong or for comparison. All of this work was done in order to prepare the patch series.


Git code has a test suite to ensure everything continues working with your changes. As git bisect-helper is a new command, all tests with bisect feature are called with current git bisect command, so I adapted in a separated branch all calls to the new command in order to test it.


Last week two patches were sent. One of them was rejected, because by its own, it has not enough interest to be integrated on git code. The second one is still under review after sending a second version, because there are no news about its state.

If you have read previous posts, my main objective at the moment is to integrate all previous work before moving forward. After meeting with my mentor, we decided the best option is to send a patch series with all commits and with the least important ones at the beginning of the patch series as preparatory/clean-up patches.

Thank you for reading and merry Christmas!


On review
Will queue

See also