A Git client that lives in the Unity Editor. Commit, branch and merge, read scene and prefab changes as objects, lock assets with Git LFS, and undo what you didn't mean to do.Branchwork is a Git client inside the Unity Editor. Your history, your changes and your branches sit in a dockable window, so you can commit, pull and push without switching to another app.It's built around the problems Unity projects actually have with git. A scene change isn't a wall of YAML anymore: Branchwork lists the GameObjects, components and values that changed. Two people who edit the same scene can merge it, because Unity's Smart Merge is set up in one click. The scenes and prefabs someone is working on can be locked, so nobody saves over them. And before a commit, Branchwork catches what breaks a project on the other machines: assets without their .meta file, unsaved scenes, large files that should be in Git LFS.Requires git. Branchwork uses the git 2.23 or newer installed on your computer, the same way your terminal does, so your credentials, hooks and Git LFS keep working as they are. It doesn't host repositories: you still need a Git server such as GitHub, GitLab, Bitbucket, Azure DevOps or Gitea.Good to knowThe Git repository must be rooted at the Unity project folder.No clone, remote management, rebase or submodule support yet.Conflicts are resolved with UnityYAMLMerge or your own tools. There's no built-in three-way merge view.Branchwork never shows a password prompt: sign in once with a credential manager, or use an SSH agent.Locks need Git LFS and a server with the LFS locking API (GitHub, GitLab and Gitea have it).The object view needs Asset Serialization set to Force Text, and can't read files stored in Git LFS.Developed and tested on Windows. macOS and Linux editors are supported, with less testing so far.Editor-only: nothing is added to your builds. No analytics, no account.Documentation: https://nekuzaky.com/docs/branchworkFeaturesCommit graph with branches and tags, and a search through the whole history. Commits load as you scroll, so large repositories open fast.Stage whole files, single hunks or a few lines. Commit, amend, pull, push and fetch.Scene and prefab changes shown as objects: GameObjects, components and properties, with the old and new values.Smart Merge in one click: UnityYAMLMerge as git's merge driver and merge tool, and a banner to resolve or abort a merge that stopped on conflicts.Git LFS locks from the Project window: padlocks, a warning before saving an asset someone else locked, and an optional read-only mode.File history that follows renames, restore of any earlier version, and line-by-line blame.Undo for commits, merges, pulls, resets and discards, checked first so it never throws away later work.Checks before a commit or a push: unsaved scenes, missing .meta files, large files outside Git LFS, scripts that don't compile.Branches, remote branches, tags, stashes, cherry-pick, revert and reset from right-click menus.Git status dots in the Project window.Team rules in a settings file you commit, personal preferences on each machine.On large projects, a suggestion to turn on git's file system monitor when status gets slow.RequirementsUnity 6000.3 or newergit 2.23 or newer, reachable from Unity (PATH)A Git repository rooted at the Unity project folderOptional: git-lfs and a server with the LFS locking API, for locksOptional: Asset Serialization set to Force Text, for the object view of scenes and prefabsSupported OSUnity Editor on Windows, macOS and Linux. Developed and tested on Windows.ContentsC# editor scripts in one assembly definition, Branchwork.Editor. No runtime code, no DLLs, no executables.Menus: Tools > Branchwork, Assets > Branchwork, Edit > Project Settings > Branchwork.Writes ProjectSettings/BranchworkSettings.json and Library/Branchwork/Trash, and .git/config only when you turn on Smart Merge or the file system monitor.Network access only through git itself: fetch, pull, push and Git LFS lock queries. No analytics.Third-party content: Bootstrap Icons 1.13.1, MIT licence (see Third-Party Notices.txt).Link to documentationhttps://nekuzaky.com/docs/branchwork




