Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
gregsn committed Aug 31, 2022
1 parent b523711 commit 7d6f10e
Showing 1 changed file with 2 additions and 2 deletions.
4 changes: 2 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,8 +23,8 @@ Let's distinguish different cases:
* Dev A moved a bunch of definitions into a new *Category* or *Group*. Dev B changed one of those definitions.

First intuitions:
* **different patches/canvases**: Easy to be merged. But ideas might still collide: *e.g. Dev A changed an interface and all its implementations. Dev B added an implementation of the old interface as known from *Base**
* **same patch/canvas, different ends**: This should be mergeable. But it's not likely that the different ideas will merge semantically and the result will just run.
* **different patches/canvases**: Easy to be merged - syntactically. Also semantically you often should be lucky and the different ideas combine without trouble. Sometimes however ideas might collide: *e.g. Anna changed an interface and all its implementations. Bob added an implementation of the old interface as known from Base.* So we can have red nodes even after a merge without any conflicts.
* **same patch/canvas, different ends**: This should also be mergeable without further ado. But it's not likely that the different ideas will merge semantically and the result will just run.
* **directly conflicting changes in the same patch/canvas**: We have a conflict where the user would need to pick one version or the other. These conflicts sound like real bad, but then again: often those are about details, like moved nodes here and there. Often it's sufficient to have a strategy that just picks one and doesn't drag you into a timeconsuming decision process. What you want however is a notification that there were direct conflicts that got resolved in the one other way.
* **structural changes**: This is unmergeable for now since the only way to do those structural changes (via patch editor) is to copy and paste the definitions resulting in new GUID-Ids for all the elements.
*Note: this problem would go away if the document structure of VL files gets flattened (distinguish Canvas-Placement within another Canvas from the actual Canvas Definition, which should always be top-level)*
Expand Down

0 comments on commit 7d6f10e

Please sign in to comment.