https://github.com/ipatch/freecad.projects.in.scm
me experimenting with version controlling freecad project files
https://github.com/ipatch/freecad.projects.in.scm
Last synced: 5 months ago
JSON representation
me experimenting with version controlling freecad project files
- Host: GitHub
- URL: https://github.com/ipatch/freecad.projects.in.scm
- Owner: ipatch
- License: mit
- Created: 2021-04-20T20:14:32.000Z (about 5 years ago)
- Default Branch: main
- Last Pushed: 2021-04-27T18:35:55.000Z (about 5 years ago)
- Last Synced: 2025-06-07T00:35:21.678Z (about 1 year ago)
- Size: 49.8 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
my first experiment with version controlling freecad project files
## workflow / 20 apr 2021
- setup a working dir, init a git repo within the working dir `git init`
- launch freecad, create a new document, save the document
> a `project.FCStd` file will be created in the git repo
- make a change to the document, ie. add a cube or something (part workbench)
- save the document again, a `project.FCStd1` file will be created
- checkin in changes, make a commit with a quick message explaining the changes
```shell
git add .
git commit -m "checkin initial freecad projects"
echo "optional, push to remote git repo"
```
## limitations
- if/when reverting a project to a prior commit within the git repo
```shell
git checkout [HASH_OF_COMMIT]
```
...and if the current freecad file is open in freecad, the **file will not be updated!**
- close the current file, and reopen the file, and freecad should pickup the file as it existed at that particular commit.
the freecad file will have to be open/closed each time when reverting the file a particular commit.
## todos
- [ ] present some modal/dialog for inputting a **commit** message when _file > save_ is run from within the freecad GUI
- [ ] close/reopen file when reverting/changing to a particular commit within the project history
## references
- [version controlling freecad files, blog post][ul1]
- [**forum.freecadweb.org** version control support (git) for freecad project files][ul2]
- [**gitlab.com** freecad wrapper around `.FCStd` project files][ul3]
- [**apple.stackexchange** useful question about using applescript as a wrapper for cli commands, ie launch window/dialog][ul4]
- [**howtoforge.com** zenity gui wrapper for cli, cross-platform][ul5]
- [**stackoverflow** using git to manage **zip** files][ul6]
[ul1]:
[ul2]:
[ul3]:
[ul4]:
[ul5]:
[ul6]: