From: Phillip Wood Date: Tue, 20 Nov 2018 12:59:57 GMT Subject: Re: [PATCH] technical doc: add a design doc for the evolve command Message-ID: <8f580b70-3eb2-d751-eb37-6ec025e167ab@talktalk.net> In-Reply-To: On 20/11/2018 12:18, Phillip Wood wrote: > On 15/11/2018 00:55, sxenos@google.com wrote: >> From: Stefan Xenos >> +Divergence >> +---------- >> +From the user’s perspective, two changes are divergent if they both >> ask for >> +different replacements to the same commit. More precisely, a target >> commit is >> +considered divergent if there is more than one commit at the head of >> a change in >> +refs/metas that leads to the target commit via an unbroken chain of >> “obsolete” >> +edges. >> + >> +Much like a merge conflict, divergence is a situation that requires user >> +intervention to resolve. The evolve command will stop when it encounters >> +divergence and prompt the user to resolve the problem. Users can >> solve the >> +problem in several ways: >> + >> +- Discard one of the changes (by deleting its change branch). >> +- Merge the two changes (producing a single change branch). > > I assume this wont create merge commits for the actual commits though, > just merge the meta branches and create some new commits that are each > the result of something like 'merge-recursive original-commit > our-new-version their-new-version' That should have been merge-recursive original-commit^ -- our-new-version their-new-version Best Wishes Phillip