News for hackers. Stuff that matters.
Re:A Coherent Vision for the Future of Version Control by rightbyte on Sunday March 22, 2026 @02:03PM (#47480279)
> You can commit with conflicts unresolved.

True but it is not valid syntax. Like, you mean with the conflict lines?

Re:A Coherent Vision for the Future of Version Control by Someone on Sunday March 22, 2026 @03:21PM (#47481076)
In this model, conflicts do not exist, so there are no conflict markers (the UI may show markers, but they get generated from what they call “the weave”)

Because of that, I think it is worse than “but it is not valid syntax”; it’s “but it may not be valid syntax”. A merge may create a result that compiles but that neither of the parties involved intended to write.

Re:A Coherent Vision for the Future of Version Control by furyofantares on Sunday March 22, 2026 @02:21PM (#47480481)
The conflict lines shown in the article are not present in the file, they are a display of what has already been merged. The merge had changes that were too near each other and so the algorithm determined that someone needs to review it, and the conflict lines are the result of displaying the relevant history due to that determination.

In the example in the article, the inserted line from the right change is floating because the function it was in from the left has been deleted. That's the state of the file, it has the line that has been inserted and it does not have the lines that were deleted, it contains both conflicting changes.

So in that example you indeed must resolve it if you want your program to compile, because the changes together produce something that does not function. But there is no state about the conflict being stored in the file.

Re:A Coherent Vision for the Future of Version Control by theK on Monday March 23, 2026 @01:34AM (#47485807)
Isnt that a bit dangerous in its own? If the merge process can complete without conflicts being resolved, doesnt it just push the Problem down the road? All of a sudden you have to deal with failing CI or ghost features that involve multiple people where actually you just should has solved you conflict locally at merge time.
Re:A Coherent Vision for the Future of Version Control by furyofantares on Monday March 23, 2026 @11:39AM (#47491016)
The tooling can force resolution at any step desired.
Re:A Coherent Vision for the Future of Version Control by theK on Monday March 23, 2026 @12:31PM (#47491732)
What's the point of options when there only is one correct answer?
Re:A Coherent Vision for the Future of Version Control by furyofantares on Monday March 23, 2026 @02:58PM (#47493670)
The conflict is no longer an ephemeral part of the merge that only ever lives as markup in the source files and is stomped by the resolution that's picked, but instead a part of history.

I think it is also not true that there's only one correct answer, although I don't know how valuable this is.

For committing let's say yes, only one correct answer. Say the tool doesn't let you commit after you've merged without resolving conflicts.

But continuing to work locally you may want to put off resolving the conflict temporarily. Like person A changed the support email to [email protected] and person B changed it to [email protected] - obviously some wires go crossed and I will have to talk to A or B before committing the merge and pushing, but I can also go ahead and test the rest of the merge just fine.

And heck, maybe even committing after merging is fine but pushing requires resolving. Then I can continue working and committing locally on whatever else I was working on, and I'll only resolve it if I need to push. Which may mean I never need to resolve it, because A or B resolve it and push first.

Re:A Coherent Vision for the Future of Version Control by shaftway on Tuesday March 24, 2026 @11:06PM (#47512746)
> The conflict is no longer an ephemeral part of the merge that only ever lives as markup in the source files and is stomped by the resolution that's picked, but instead a part of history.

How is this different than having a merge commit?

Re:A Coherent Vision for the Future of Version Control by ericpauley on Sunday March 22, 2026 @02:05PM (#47480305)
Yeah this seems silly. You can do the same thing in git (add and commit with the conflict still there)! Why you would want to is a real mystery.
Re:A Coherent Vision for the Future of Version Control by fweimer on Sunday March 22, 2026 @02:28PM (#47480557)
It allows review of the way the merge conflict has been resolved (assuming those changes a tracked and presented in a useful way). This can be quite helpful when backporting select fixes to older branches.