ConflictRecord
A name a merge left conflicted, as it's kept: which definitions came from which side of the merge, each side
labelled (its branch), and the merge base's definition. It's a setting of the codebase (conflict <branch> <name>), beside the branch's history rather than in it, so it changes no hash; it goes when the conflict is
resolved.
export interface ConflictRecord { base?: string; ours: { label: string; hashes: string[] }; theirs: { label: string; hashes: string[] }; }