A game repository means hundreds of gigabytes of unmergeable binaries, and artists who just want to grab a file and work. Git can't carry that weight; Perforce can, but it's costly and knows nothing about your code. TouchQuill does both: committing a 200 MB file takes a fraction of a second, and taking a lock is one command.
Anyone who has versioned a game knows the pain: git lfs breaking again, two people editing the same .uasset, a merge stuck on a binary at 5 pm on Friday. TouchQuill exists so these things stop happening.
Files live in content-addressed storage (BLAKE3). No compression choking on binary data, no bolted-on LFS. Duplicates are stored once; only missing objects travel over the wire.
Take a file and it's yours. Someone else wants it? They join the queue and get it automatically when you're done. The server enforces locks at push time, so nobody can slip past them by accident.
Integration always goes through. A conflict is stored as its own object: assign it to a teammate, defer it until tomorrow, or resolve it with a plugin. The team keeps moving.
Lens follows a specific symbol β a function, a class β across file renames and refactors. Ask "who touched calculate_damage" and you get an answer, even if the file changed names three times.
The Change ID (ch-β¦) survives amend and rebase. Reviews, locks and notifications stick to the change itself, not to a hash that will be different tomorrow.
Administrative events are chained with BLAKE3 hashes, signed with Ed25519, and anchored outside the server. Tampering shows β including tampering attempted by an admin.
Identical data and operations, median of five runs, Perforce on a live p4d Helix Core. Methodology and full results are on a separate page β the measurement script lives in the repo, so you can reproduce everything.
One client binary for Linux, Windows and macOS. The server takes fifteen minutes to set up.
# start locally β zero configuration tq init MyGame tq commit -m "first sword" # join your team tq remote https://vcs.studio.com tq login tqt_... tq push # take exclusive hold of a binary tq lock Content/Weapons/sword.uasset β Lock acquired. Marta is #2 in the queue. # who touched this function? tq lens blame --symbol calculate_damage
A task channel per ticket, a release channel per shipment, a personal one for experiments. A virtual channel can show artists just the assets, with no code in sight. The rules β who can push, what requires a lock β live in tq-channel.toml, reviewed like any other change.
The hierarchical tree means the server grows with the number of changes, not repo size times commit count. The worktree index and the fsmonitor daemon (Linux and Windows) keep status and commit fast even with a hundred thousand files.
TouchQuill is in closed testing. Running a studio or a project where Git or Perforce is starting to hurt? Drop us a line β we'll get back to you about pilot access, or just talk through your pipeline. No strings attached.