upvote
hey, someone actually reads the docs :D

no, the integration branch is not "broken", its just not complete until all slices have been merged INTO the integration branch - after all slices have been merged, the integration branch is complete, yet has a non-optimal history (and most likely a wrong blame because of how git resolves the blame), - therefore the "kokomeco" branch is created after the slices have been merged, - there the original intended merge is done because the outcome of the conflicts is already known from the integration + slice branch merges.

Feel free to open issues/questions in the repo if you're interested, I merely stumble by ycombinator

reply
> no, the integration branch is not "broken", its just not complete until all slices have been merged INTO the integration branch

What do you call an incomplete branch that is missing slices?

> after all slices have been merged, the integration branch is complete, yet has a non-optimal history (and most likely a wrong blame because of how git resolves the blame)

What is the value proposition then? Broken integration branches that leave a suboptimal history? What am I missing?

> Feel free to open issues/questions in the repo if you're interested, I merely stumble by ycombinator

I don't think there is a compelling reason to use this tool. It messes commit history and leaves integration branches in a broken state? Not a great selling point. The alternative would be to sync with branches using standard flows such as rebasing and merges from base branches. You don't need a tool for that, only a hello world tutorial on Git.

reply
> What do you call an incomplete branch that is missing slices?

"incomplete", evidently. I don't see a real alternative here - you need some working space for an in-progress merge, and if you want to do the merge collaboratively, you'll want it on a branch. Just don't run CI on that branch till the merge is complete.

> Broken integration branches that leave a suboptimal history? What am I missing?

You appear to be missing the next step, where they use the merge resolutions from that suboptimal history to replay the original merge, giving you back nice clear history (and at this point, the integration branch can be discarded, presumably)

reply
^ you got it right, nothing to add here :)
reply