marcin_ose wrote:Was there any discussion on this forum regarding building a cloud collaborative CAD solution? Marcin
there has been some very shallow discussions. I think the results of those discussions can be found here http://www.freecadweb.org/wiki/index.ph ... ly_project
marcin_ose wrote:but are there simple, innovative architectures for implementing collaborative CAD without making any deep changes to FreeCAD right now? For example - creating a Collaborative Workbench or such which allows simultaneous editing of a CAD assembly by 2 or more people over the internet?
I don't think so.
marcin_ose wrote:I am thinking about a local computing powered capacity, where the only 'cloud' feature is that any diffs in the file are simply uploaded to the collaborator and processed to show the changes in realtime. Even perhaps an automatically generated email to a collaborator would provide the diffs - and the local Collaborative Workbench would process the incoming data to make changes on the collaborator's screen. That is just one idea - not really cloud Architecture, but more a peer architecture, lightweight and scalable in principle to many users.
You might be able to hack something together. Here is how I would start. create a git repository on a server and clone the users repositories from it. You will want to work with the freecad files 'unzipped'. Create commits and push/pull to/from the server. Even with very strict rules on who edits what, you are going to get conflicts. I have attached a diff from a simple file containing 1 box that gets it's length changed. You can see that there will be conflicts in things that users don't care about, like last modified date and camera settings. These merge conflicts are not necessarily difficult to solve, but they will bog you down. I would find a freecad + git workflow that would work correctly then start scripting the head-aches away. At that point if the process was still to laborious, I would look at what simple freecad code alterations would help.
Here is a link to linus talking about incorporating git into his subsurface program.
https://plus.google.com/+LinusTorvalds/ ... 2XVf9Q7MfV
ickby wrote:The problem is merging of modeling steps without fully breaking the model due to mixed up references. Also operations are dependent on the order they are applied and cannot be freely interchanged, which makes operation merging a tough one.
I believe he is looking for a division of labor on a large project where different users are working in different areas, so merge conflicts would be minimum.