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

Re: Git Branching - Best Practices - Large project - long running branches

From
Jakub Narębski <jnareb@gmail.com>
Date
Mar 31, 2017, 13:02 UTC
Message-ID
<d336369a-3b1c-c311-2155-1e08ae669cdb@gmail.com>
In-Reply-To
<4bb4871d8a78402bbef91231134a613b@EX1-PRD.lsac.org>
W dniu 31.03.2017 o 13:55, Mayne, Joe pisze:
Show 16 quoted lines
> Hello, I work on a team of 15+ developers. We are trying to
> determine best practices for branching because we have had code
> stepped on when a developer has a long running feature branch.
> 
> We have a Development branch. Developers are instructed to create a 
> branch when they begin working on a feature. Sometimes a feature may 
> take a week or two to complete. So a Developer1 creates a branch and 
> works for a week or two. In the meantime, other developers have 
> created feature branches from Development and merged them back into 
> Development.
> 
> At this point we are not certain if Developer1 should:
> 
> * Periodically merge the evolving Origin/Development into their
> Feature branch and when they are done work merge their feature branch
> into Origin/Development.
This is one possible solution.

Another variant of this would be to enable rerere feature (reuse recorded resolution), and periodically do a trial merge from the Origin/Development branch to prime the rerere mechanism (discarding those merges after resolving them).

Show 8 quoted lines
> 
> OR
> 
> * Stay on their pure feature branch and when they are done merge
> into Origin/Development.
> 
> We have had issues with developers stepping on code when they have 
> long running branches. We are looking for a best practices.
There is yet another solution:
OR
* Periodically _rebase_ pure feature branch on top of current version
of Origin/Development, or do such rebase (perhaps an interactive one
to clean-up feature development steps) before pull request, before
they are to merge feature branch into Origin/Development.

You can also try to use third-party git-imerge tool to help merging long divergent branches.

HTH,
-- 
Jakub Narębski
Previous: Mayne, JoeNext: Randall S. Becker
Message 2 of 3 in “Git Branching - Best Practices - Large project - long running branches”
  1. Mayne, JoeMar 31, 2017
  2. Jakub NarębskiMar 31, 2017
  3. Randall S. BeckerMar 31, 2017

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.