Hi Christian On 2019-03-23 22:17 UTC Christian Couder <> wrote: > On Fri, Mar 22, 2019 at 4:12 PM Rohit Ashiwal > <rohit.ashiwal265@xxxxxxxxx> wrote: > > > > Hey People > > > > I am Rohit Ashiwal and here my first draft of the proposal for the project > > titled: `Improve consistency of sequencer commands' this summer. I need your > > feedback and more than that I need help to improve the timeline of this > > proposal since it looks very weak. Basically, it lacks the "how" component > > as I don't know much about the codebase in detail. > > > > Thanks > > Rohit > > > > PS: Point one is missing in the timeline from the ideas page[0], can someone > > explain what exactly it wants? > > You mean this point from the idea page: > > "The suggestion to fix an interrupted rebase-i or cherry-pick due to a > commit that became empty via git reset HEAD (in builtin/commit.c) > instead of git rebase --skip or git cherry-pick --skip ranges from > annoying to confusing. (Especially since other interrupted am’s and > rebases both point to am/rebase –skip.). Note that git cherry-pick > --skip is not yet implemented, so that would have to be added first." Yes. > or something else? > > By the way it is not very clear if the proposal uses markdown or > another related format and if it is also possible (and perhaps even > better visually) to see it somewhere else (maybe on GitHub). If that's > indeed possible, please provide a link. It is a good thing though to > still also send it attached to an email, so that it can be easily > reviewed and commented on by people who prefer email discussions. This was intentional. Here is the link of the proposal hosted at gist.github.com[1], those who prefer text only version here[2] is mailing list link. > > List of Contributions at Git: > > ----------------------------- > > Status: Merge in next revision > > Maybe "Merged into the 'next' branch" > > > git/git: > > [Micro](3): Use helper functions in test script. > > Please give more information than that, for example you could point to > the commit in the next branch on GitHub and perhaps to the what's > cooking email from Junio where it can be seen that the patch has been > merged into next and what's its current status. Current proposal has added links to those commits. > > Status: Merged > > git-for-windows/git: > > [#2077](4): [FIX] git-archive error, gzip -cn : command not found. This was released in v2.21.0 [3] > > Status: Merged > > git-for-windows/build-extra: > > [#235](5): installer: Fix version of installer and installed file. > > For Git for Windows contributions I think a link to the pull request > is enough. It could be nice to know though if the commits are part of > a released version. > > The Project: `Improve consistency of sequencer commands' > > ======================================================== > > > > Overview > > -------- > > git-sequencer was introduced by Stephan Beyer <s-beyer@xxxxxxx> as his > > GSoC 2008 project[6]. It executed a sequence of git instructions to <HEAD> > > or <branch> and the sequence was given by a <file> or through stdin. The > > git-sequencer wants to become the common backend for git-am, git-rebase > > and other git commands. The project was continued by Ramkumar <artagnon@xxxxxxxxx> > > in 2011[7], converting it to a builtin and extending its domain to git-cherry-pick. > > Yeah, you can say that it was another GSoC project and maybe give his > full name (Ramkumar Ramachandra). > > There have been more related work to extend usage of the sequencer > after these GSoC projects, at least from Dscho and maybe from Alban > Gruin and Elijah too. I would be nice if you could document that a > bit. > > > As of now, there are still some inconsistencies among these commands, e.g., > > there is no `--skip` flag in `git-cherry-pick` while one exists for `git-rebase`. > > This project aims to remove inconsistencies in how the command line options are > > handled. > > > > Points to work on: > > ------------------ > > - Add `git cherry-pick --skip` > > - Implement flags that am-based rebases support, but not interactive > > or merge based, in interactive/merge based rebases > > Maybe the flags could be listed. > > > - [Bonus] Deprecate am-based rebases > > - [Bonus] Make a flag to allow rebase to rewrite commit messages that > > refer to older commits that were also rebased > > This part of your proposal ("Points to work on") looks weak to me. > > Please try to add more details about what you plan to do, how you > would describe the new flags in the documentation, which *.c *.h and > test files might be changed, etc. I'll soon add details to the proposal, currently digging deep into the mailing list. > > Proposed Timeline > > ----------------- > > + Community Bonding (May 6th - May 26th): > > - Introduction to community > > - Get familiar with the workflow > > - Study and understand the workflow and implementation of the project in detail > > > > + Phase 1 (May 27th - June 23rd): > > - Start with implementing `git cherry-pick --skip` > > - Write new tests for the just introduced flag(s) > > - Analyse the requirements and differences of am-based and other rebases flags > > > > + Phase 2 (June 24th - July 21st): > > - Introduce flags of am-based rebases to other kinds. > > - Add tests for the same. > > > > + Phase 3 (July 22th - August 19th): > > - Act on [Bonus] features > > - Documentation > > - Clean up tasks > > > > > > Relevant Work > > ============= > > Dscho and I had a talk on how a non-am backend should implement `git rebase > > --whitespace=fix`, which he warned may become a large project (as it turns > > out it is a sub-task in one of the proposed ideas[0]), we were trying to > > integrate this on git-for-windows first. > > Keeping warning in mind, I discussed this project with Rafael and he suggested > > (with a little bit uncertainty in mind) that I should work on implementing > > a git-diff flag that generates a patch that when applied, will remove whitespace > > errors which I am currently working on. > > You mean Rafael Ascensão? Please CC him if he is involved in this. Yes, I'll CC him. Thanks Rohit [1]: https://gist.github.com/r1walz/5588d11065d5231ee451c0136400610e [2]: https://public-inbox.org/git/20190322151157.9550-1-rohit.ashiwal265@xxxxxxxxx/ [3]: https://github.com/git-for-windows/git/releases/tag/v2.21.0.windows.1