Glossary

Conflict record

Definition

A conflict record is an explicit entry created when the same work diverges on two machines in a way that cannot be merged safely. Instead of last-writer-wins overwriting one side, both versions are kept and set aside for you to resolve, so offline divergence never silently loses work.

Divergence is normal when work happens on more than one machine, especially offline. Two devices can each change the same lines, or one can delete a file the other edited. A file-sync tool usually resolves this by picking the newest write and discarding the rest, which quietly destroys whichever side it did not choose.

A conflict record is the honest alternative. When a merge cannot prove a safe result, the divergence is recorded and both versions are preserved rather than one being overwritten. Your live working file stays stable (no conflict markers are written into your source automatically) and the conflicting material waits for an explicit resolution step. Nothing is lost; a decision is deferred to you.

Why it matters

Silent last-writer-wins is the failure mode developers fear most from syncing code, because the loss is invisible until you go looking for work that is no longer there. Recording conflicts instead of resolving them by guess turns a potential silent data loss into a visible, recoverable decision.

In practice

You edit a config on your laptop offline while an agent edits the same lines on a remote host. Rather than one overwriting the other, a conflict record keeps both versions and holds them until you choose, with your editor still pointed at a stable file.

How Bowline relates

Bowline preserves both sides when work diverges and records a conflict instead of silently overwriting. Your live view stays stable, no markers are injected into your source, and the conflicting material is set aside until you repair it, with no silent last-writer-wins.

Read the docs on conflict record

ready when you are

Your ~/Code, on every machine and every agent.

Install bowline and your projects follow you. It just works.

Get started
curl -fsSL https://install.bowline.sh | sh

macOS app · Linux CLI. Then run bowline login.