Re: Conflict handling through rebasing branches

2013-01-18 Thread Michael Dürig
On 18.1.13 9:57, Jukka Zitting wrote: Hi, On Thu, Jan 17, 2013 at 7:15 PM, Michael Dürig wrote: int merge(branch) { while(true) { if (!rebase(branch)) { throw new MicroKernelException("merge conflict"); } atomic { if (branch.baseRevi

Re: Conflict handling through rebasing branches

2013-01-18 Thread Jukka Zitting
Hi, On Thu, Jan 17, 2013 at 7:15 PM, Michael Dürig wrote: > int merge(branch) { > while(true) { > if (!rebase(branch)) { > throw new MicroKernelException("merge conflict"); > } > > atomic { > if (branch.baseRevision == trunk.headRevision) { >

Re: Conflict handling through rebasing branches

2013-01-18 Thread Michael Dürig
On 18.1.13 7:35, Jukka Zitting wrote: Hi, On Thu, Jan 17, 2013 at 7:15 PM, Michael Dürig wrote: The core idea is to try to resolve all conflicts in a branch through rebasing it on top of the current trunk. After successfully rebasing a branch, merging it to trunk is as simple as fast forward

Re: Conflict handling through rebasing branches

2013-01-18 Thread Michael Dürig
On 18.1.13 7:35, Jukka Zitting wrote: Hi, On Thu, Jan 17, 2013 at 7:15 PM, Michael Dürig wrote: The core idea is to try to resolve all conflicts in a branch through rebasing it on top of the current trunk. After successfully rebasing a branch, merging it to trunk is as simple as fast forward

Re: Conflict handling through rebasing branches

2013-01-18 Thread Thomas Mueller
Hi, Do we have any real-world data about how many conflicts we typically get? I would rather avoid adding a complex mechanism for something that occurs very rarely. Also, why do we need to merge conflicts, and not just throw the exception to the client? What kind of conflicts can be merged, how co