I know that version control (e.g. git) support for FreeCAD document has been requested several times. I am also aware the Arch git utility mentioned in wiki page (but I couldn't find it in current release, is it removed?) Anyway, I hereby announcing my effort to bring proper support of version control (VC) to FreeCAD. In short, it is now possible to save and restore directly from uncompressed directory, and all files saved inside are completely text based and optimized for line based diff operation. For more details, please check out the big commit message here
I didn't add any code to interact with the actual VC software. That being said, it is already pretty usable with an external VC, such as git, since it is easy to use git to find out what are the new files added. And unused files are auto deleted by FreeCAD, so git can show you the deleted files as well.
Many of you may know that my Link merge is on the way. This VC patch can be applied after the big merge. So I guess it can happen pretty soon. Part of the reason I am opening this topic is to inspire other interested developers to continue the development with the actual VC interaction. It should be modularized, preferably developed using Python, such that more than one VC can be supported. Interested developers can checkout my branch at here
. For end users, please be warned that the file format hasn't been finalized yet, there may be breaking change along the way, although the archived format is kept same for backward compatibility.