Streams are just “repos” right now.
So, a stream can have multiple different files (models) in it?
Merging: the merge described above is a simple one, without any conflict resolution. Conflict resolution is something hard in AEC, where it’s not just text
It can be:
- actual 3d clashes - but only some of them, because many can be “ok”
- element duplication (do you have overlapping representations of the same object from more disciplines?)
- etc.
In short, it’s in the “eye of the beholder” - that’s why for actual “real” merges the only sound approach is to pull the data into an authoring software of choice (ie, Rhino) and resolve any “conflicts” manually.
Interesting!
Thinking out loud… from what I understand (a friend of mine is more of an expert user, so I’m discussing it with him as well), Revit’s primary way of supporting collaboration in the same file is to enable work sharing. For this reason, almost all companies opt to store their models on disk (network), because that is one of the two work sharing options (other one is bim360, which is $$$). The collaboration feature prevents conflicts, so Revit does not have any conflict resolution support.
I was thinking Speckle will enable a new way of saving Revit models. One that is much more transparent and easy to share with other AEC tools and with other teams. But I also have a feeling that it conflicts with how Revit users collaborate, namely via locking elements.
How difficult is it to actually merge in Revit with the current connector? What would the steps be (would like to ask my friend if he can try it out while my developer license for Revit is pending )?
And how difficult would it be to actually build a diff/merge tool in Revit? I’ve read some papers on diff/merge algoritmes for 3d (and BIM), and I think it would be doable. Speckle could facilitate in the loading of the merging sets. I have a feeling that this would be far more natural (instead of locking), especially given how Speckle works, would you agree?