Crafty
The easiest way to use Git with Unity
Intuitive for non-coders
A one-button workflow to sync files with Git.
No merge conflicts
Non-coders will know which files not to touch.
Non-coders can also lock files with a simple drag and drop.
Non-coders should not have to learn a new tool
Learning Git can take time and be intimidating for non-coders, even when using traditional GUI clients such as GitHub Desktop or SourceTree.
A Crafty user has a simple one-button workflow that will pull, add, commit, and push changes to a Git repository.
This Dropbox-like workflow is familiar to most people and saves a lot of explanation.
Merge conflicts are a waste of time
When two people change the same file at the same time, it usually creates a merge conflict. Especially when changes are made on scenes, prefabs, or binary files. Coders can spend a lot of time cleaning up and supporting non-coders when this happens.
It’s also not a very smooth process and can cause errors.
The best is to prevent merge conflicts altogether.
With Crafty, users can see which files are currently being modified by someone else. That way, the person who was going to make a conflicting change can wait a little before modifying those files or ask for permission.
Want to be 110% sure?
Lock any file so you are the only one who can modify it.
Simply by doing a drag and drop.
The lock mechanism is based on Git LFS.
Still managed to end up with a merge conflict?
For each conflicting file, visually select what you want to keep as the final version. Currently, this visual merge works only with the Transform component on a prefab file.
FAQ
Who is this for?
Lots of small and medium teams use Git in their project.
Usually at least one coder will be able to setup the Git repository and decide on a workflow.
But when the team needs a non-coder such as an artist, a level designer or a sound designer to integrate or modify their assets into Unity, that’s when Crafty comes in handy.
Can the coders in my team keep using Git as usual?
Yes! Non-coders have the complexity of Git abstracted by Crafty, while coders can keep using the full power of Git.
Crafty generates usual Git commits so it can coexist with a traditional workflow.
Will this work with my particular workflow?
Crafty is built on top of Git so it can support lots of workflows.
Shoot me an email if you would like to discuss your specific situation.
Is this only compatible with GitHub?
Nope, any remote Git hosting system will work. GitHub, GitLab, Bitbucket, on premise server etc…
What setup is needed?
Assuming an existing Unity project and Git repo:
Install Git on the non-coder's computer.
Clone the repo.
Checkout a branch.