What you need
Before you start, gather:
- A game project folder you want to version — Unreal, Unity, Godot, or anything else. A brand-new empty project is fine too.
- A computer running Windows, macOS, or Linux (desktop app support varies; Windows is the most tested).
- An email address for signup.
That's it. No credit card, no infrastructure to provision, no dependencies to install beyond the desktop app itself.
Step 1 — Sign up and create an organization
Head to usourcecontrol.com/signup. We use Stytch magic links, so you'll get an email with a one-click sign-in link — no password to remember.
On your first login, you'll be prompted to create an organization. An organization is the container for your projects, teammates, and billing. For a solo developer, it's usually just your name or studio name. For a team, pick whatever matches your studio's real name.
You'll start on the Solo plan by default. It's free, includes 50 GB of storage and unlimited commits, and never expires. You can upgrade whenever you need more capacity or a team.
Step 2 — Create your first project
From the dashboard, click New project. Give it a name — it doesn't have to match your local folder name, so pick something meaningful. "Crystal Wreckage" or "Deep Forge Prototype" is better than "MyProject_v2_final".
Once the project exists, the dashboard shows a project key — a string like usc_live_1a2b3c4d5e6f.... Copy it. You'll paste it into the desktop app next. Treat it like an API key — anyone with it can push and pull your project.
Step 3 — Install the desktop app
Download the app from usourcecontrol.com/download. The installer is signed and open source — the full repo is on GitHub if you want to audit it before running.
Run the installer, launch the app, and sign in with the same email you used for signup. Another magic link arrives; click it, you're in.
Step 4 — Link your project
In the desktop app, click Link project. Paste your project key from Step 2. Then browse to your game project's root folder — the folder that contains your .uproject (Unreal), project.godot (Godot), or Assets/ + ProjectSettings/ (Unity).
The app detects your engine automatically and pre-configures sensible default exclusions. For Unreal that's Saved/, Intermediate/, DerivedDataCache/, Binaries/, Build/. For Unity it's Library/, Temp/, Logs/, obj/, Build/. For Godot it's .godot/ and export/. You can customize the list later, but the defaults are what you want on day one.
Step 5 — First commit
The app now shows a list of files staged for commit — everything in your project folder that isn't excluded. Review quickly:
- For Unreal: you should see Content/, Config/, Source/, and your .uproject. No Saved/, no Intermediate/.
- For Unity: Assets/, Packages/, ProjectSettings/. No Library/, no Temp/.
- For Godot: project.godot, addons/, scenes, scripts, assets. No .godot/, no export/.
Write a short commit message — "Initial project state" is fine for the first one — and click Commit.
The first commit uploads every file, so it takes a while for large projects. A 50 GB project on 100 Mbps takes ~70 minutes. You can close the app mid-commit and transfers will resume on relaunch. Subsequent commits only send changed files and are usually done in seconds.
Step 6 — Invite teammates (optional)
If you're on a solo project, skip this step. If you have teammates, head to the dashboard's Members section.
Invite by email. Choose a role:
- Owner — billing and organization-level control. Usually just you.
- Admin — can invite members, create projects, force-release locks.
- Member— commits and syncs within projects they're added to.
Note that joining the org doesn't automatically grant access to every project. Assign project membership explicitly so freelancers and contractors only see what they need.
On their first sync, teammates pick a fresh folder on disk and let the app download the project. First sync takes a while; after that, everyone's in sync.
Good habits from day one
Three things that turn source control from a chore into a safety net:
Commit often.A commit is a checkpoint. End-of-session commits, "I'm about to try something wild" commits, "the boss is happy" commits — all good. History is cheap; lost work is expensive.
Lock binary files before you edit them. Click the file in the app, click Lock, optionally type a reason. Edit in your DCC tool. Commit, the lock releases. This one habit prevents more lost work than any other practice.
Write useful commit messages."Added boss phase 2 with death animation" beats "stuff" every time, especially when you're spelunking history six months later.
Where to go next
Congratulations — your game project is now under real source control. Some suggested reading:
- Engine-specific setup deep-dives: Unreal, Unity.
- Workflow advice: Game asset versioning best practices.
- Coming from another system? Migrate from Perforce.
Questions, problems, or feedback — we're on Discord and GitHub, or reach us at contact@usourcecontrol.com. Happy shipping.
