Git with FreeCAD
Learn how to effectively use Git version control with FreeCAD. This guide includes steps on how to set up your first repository on GitHub with Anchorpoint.

Managing CAD files can sometimes feel like a high-stakes game of "Don't Delete the Wrong Version." Whether you’re working on an architectural project in FreeCAD or modeling parts in other CAD software, you've probably encountered the nightmare of having too many versions of the same file.
If you use FreeCAD, Rhino, Solidworks or AutoCAD, then you know that CAD files tend to be large and complex. They are also prone to breaking if two people access them simultaneously. Unlike code, you can't simply "merge" two versions of a 3D gear. You need a system that understands how artists and designers work, not just how programmers write scripts. That's where version control comes in.

Think of version control as a "checkpoint" for your CAD project. If you make a mistake or a file becomes corrupted, you can easily revert to an earlier state. This feature solves several major problems, such as:
Choosing the right version control system requires understanding the fundamental divide between centralized and distributed architectures. Here is a breakdown of the two:
Commonly utilized in enterprise environments and legacy systems, tools like Perforce rely on a single, central server to manage the history of a project.
Modern systems like Git have become the industry norm by decentralizing the repository, giving each developer a full copy of the project history.
Think of plain Git as the "do-it-yourself" engine of the dev world. You're working straight from the command line (CLI), no frills attached. If you’re dealing with big assets, you'll definitely need to slap on Git LFS to keep things running smoothly.

Anchorpoint is basically Git with a makeover. It's built specifically for game devs, artists, and CAD designers who need a nice interface. It hides all the scary command-line stuff and gives you things that actually make sense for visual work, like file locking, thumbnails and previews.

If you're working for a massive studio with a project the size of a small country, you're probably using Perforce. It is the heavyweight champion for handling millions of files and massive binary data.

Subversion (SVN) has been around forever. It's not flashy, and it's definitely not the fastest, but it's a "what you see is what you get” system. It's great if you want a linear history that doesn't require a PhD in computer science to understand.

Choosing the right version control system for CAD ultimately boils down to a balance between your team’s size, the type of files you’re pushing, and how much "technical overhead" you’re willing to manage. If you're a pure software shop, Git is the undeniable industry standard. If you’re a game studio or a creative team juggling 3D models and large textures, Anchorpoint brings much-needed usability to the Git ecosystem, while Perforce remains the undisputed king of large-scale enterprise projects where file locking is non-negotiable. If you’re keeping things small and simple, SVN is still a reliable, no-nonsense tool that gets the job done.
Technically, yes, but it is rarely a good idea. Using two different systems for the same project creates a fragmented source of truth, doubles your maintenance work, and confuses the team. Pick the one that fits your primary project type and stick to it.
It's not necessarily that it's too hard, but rather that it's designed for lines of code, not artistic assets. Artists usually need features like file locking (to prevent two people from working on the same file) and visual file previews. Using a client like Anchorpoint solves most of these pain points without the artist ever needing to touch a terminal, but if is needed by the Dev Ops, you also get access to one.
Not necessarily. Enterprise tools like Perforce often require a dedicated server, complex configuration, and expensive licensing. For small teams, Git (with a client like GitHub Desktop / SourceTree / Anchorpoint) or SVN offers far more freedom without the administrative baggage.
Git was built to track "delta changes" in text files, basically it looks at what lines of code changed. Binary files (like textures, 3D models, or audio) don't have code/text "lines", so Git tries to store the entire file every time it changes. Without an extension like Git LFS, your repository will quickly grow so large that it becomes unusable. Solutions like Anchorpoint take care of this automatically without the need of extra configurations.
A distributed system compatible with Git is almost always superior for remote teams. Because everyone has a local copy of the repository, you can stay productive offline, and your workflow isn't tethered to a single, potentially unstable company server.