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

Re: Collaborative conflict resolution feature request

From
Ddemerphq <demerphq@gmail.com>
Date
Jun 18, 2020, 08:11 UTC
Message-ID
<CANgJU+WfW4mKotMwFS+2Kaq1pDysgJutJ2NhUvyvGgowk8JXsg@mail.gmail.com>
In-Reply-To
<BY5PR19MB34007DEED68D13003C614F5F909C0@BY5PR19MB3400.namprd19.prod.outlook.com>
On Mon, 15 Jun 2020 at 11:30, Curtin, Eric <Eric.Curtin@dell.com> wrote:
Show 14 quoted lines
>
> > An aside that probably would not directly help Eric, but I know the
> > above workflow helps reasonably well.  The 'pu' branch is rebuilt
> > not on top of 'next', but is rebuilt with all topics (including
> > those already in 'next') in flight directly on top of 'master',
> > which serves as a way to anticipate conflicts that will require
> > resolution in the future before the topics can enter 'next' branch.
>
> Out of all the currently available options this solution helps. Thanks
> Junio! I played with incremental merge techniques this weekend.
> One problem with incrementally merging is that you start fixing
> conflicts that are later invalidated by subsequent commits. So it
> seems you end up doing more conflict resolution than necessary.
> Unless I'm misusing the technique.

I find that the solution in these cases is to first use interactive rebase to squash and reorganize the commits in the branches so you have a nice clean patch sequence. Once you have the branches cleaned up and squashed into a sequence of reasonable topic based chunks you then merge, sometimes it even means you dont get conflicts at all, git merge is pretty smart.

And after that you change your workflows so the rule is that whomever pushes first to the "trunk branch" wins, and the other guy has to do the conflict resolution. People will start merging earlier and more often so they can keep the conflicts to a minimum. :-) In other words I second what Philip Oakley said about bad workflows. Merge early, merge often, rollout early, rollout often, vote early, vote often. :-)

cheers, Yves

-- 
perl -Mre=debug -e "/just|another|perl|hacker/"
Previous: Junio C HamanoNext: Curtin, Eric
Message 24 of 32 in “Collaborative conflict resolution feature request”
  1. Curtin, EricJun 12, 2020
  2. Johannes SixtJun 13, 2020
  3. Christian CouderJun 13, 2020
  4. Curtin, EricJun 13, 2020
  5. Philip OakleyJun 13, 2020
  6. Junio C HamanoJun 13, 2020
  7. Sergey OrganovJun 15, 2020
  8. Philip OakleyJun 15, 2020
  9. Stefan MochJun 16, 2020
  10. Curtin, EricJun 17, 2020
  11. Sergey OrganovJun 17, 2020
  12. Christian CouderJun 13, 2020
  13. Junio C HamanoJun 13, 2020
  14. Junio C HamanoJun 13, 2020
  15. Philip OakleyJun 14, 2020
  16. Konstantin TokarevJun 14, 2020
  17. Curtin, EricJun 15, 2020
  18. Philip OakleyJun 15, 2020
  19. Junio C HamanoJun 15, 2020
  20. Chris TorekJun 15, 2020
  21. Chris TorekJun 16, 2020
  22. Philip OakleyJun 15, 2020
  23. Junio C HamanoJun 17, 2020
  24. demerphqJun 18, 2020
  25. Curtin, EricJun 18, 2020
  26. Curtin, EricJun 18, 2020
  27. demerphqJun 18, 2020
  28. Curtin, EricJun 19, 2020
  29. Christian CouderJun 20, 2020
  30. Curtin, EricJun 21, 2020
  31. Christian CouderJun 16, 2020
  32. Sergey OrganovJun 15, 2020

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.