English | 简体中文
Onegit is a worktree-centered macOS app that gathers many Git repositories in one window. It covers everyday repository browsing and worktree switching, not every feature of a general Git client.
- Scan a parent directory into a sidebar tree; pin or group projects, give them an icon, and find them with the command palette (
⌘F). - Switch worktrees above the branches, and open the shown one in the file manager, a terminal or a development tool, or its repository on GitHub.
- Review staged and unstaged changes, stage files or lines, discard changes, stash files, and commit with a per-worktree draft.
- Browse the commit graph, search history and the reflog, compare commits, and open a file's history or blame.
- Manage branches, tags, remotes and stashes, and rebase, merge, cherry-pick or revert with conflict handling.
- Push a repository without remotes to a new GitHub repository through the GitHub CLI.
- Every Git write runs only when you click, except remotes set to fetch automatically when a worktree opens.
Onegit is not released yet. Build it from source as described in Development. Git must be on PATH at runtime.
- Open Settings with
⌘,and choose the parent directory that holds your projects. - Wait for the background scan to add repositories to the sidebar.
- Select a project; with several worktrees, double-click one under Worktrees to show it.
- Choose Current changes or All commits in the project sidebar.
Requirements: macOS, Go 1.27.3 or later, and Xcode Command Line Tools. The MyGo CLI is a Go tool dependency in go.mod, so no global install is needed.
Run from source_mygo/:
cd source_mygo
GOWORK=off go mod download
go tool mygo devgo tool mygo dev runs Onegit Dev and restarts it after code changes.
Format, test, vet and build from source_mygo/:
gofmt -l .
GOWORK=off go test ./...
GOWORK=off go test -race ./...
GOWORK=off go tool mygo vet
GOWORK=off go tool mygo buildTests are headless and never open windows or native dialogs. The directory and icon pickers, packaging and the app icon need manual review. Builds go to dist/<os>-<arch>/ with ad-hoc signing and no notarization.
Build release packages for every platform from source_mygo/: a universal macOS app and disk image, Windows installers, and Linux archives and Debian packages. Windows installers need NSIS (brew install makensis).
GOWORK=off go tool mygo build -platform darwin/universal,windows/amd64,windows/arm64,linux/amd64,linux/arm64Neorio users get the same Run, Build, Test and Vet tasks from .neorio/config.yaml; Build makes these release packages.
Read ARCHITECTURE.md before changing code, and AGENTS.md for working rules. User-visible changes are listed in CHANGELOG.md.
MIT © 2026 ONEO.
