Hit is a lightweight, Git-inspired version control system written in Go. It comes with:
- A cross-platform CLI for local repositories
- A web UI for browsing repositories and commits: https://hit.harshkeshri.com
- A VS Code extension for source control integration
Choose one of the following methods:
brew tap airbornharsh/hit
brew install hitcurl -fsSL https://raw.githubusercontent.com/Airbornharsh/hit/main/scripts/install.sh | bash- Download a binary for your platform from Releases: https://github.com/Airbornharsh/hit/releases
- Make it executable and add to PATH:
chmod +x ./hit && sudo mv ./hit /usr/local/bin/hitVerify installation:
hit versionInitialize a repository:
hit initStage files and commit:
hit add .
hit commit -m "Initial commit"Add a remote and push:
hit remote add origin "hit@hithub.com:<username>/<repo>.hit"
hit push -u origin <branch>Clone an existing repository:
hit clone "hit@hithub.com:<username>/<repo>.hit"View repo in the web UI:
- Open https://hit.harshkeshri.com and navigate to your repository
Common commands (subset):
- Initialize
hit init- Status
hit status- Stage / Unstage
hit add <path>
hit add .
hit reset <path>- Commit
hit commit -m "Your message"- Remote
hit remote add origin "hit@hithub.com:<username>/<repo>.hit"
hit remote -v- Push / Pull / Fetch
hit push [-u] origin <branch>
hit pull origin <branch>
hit fetch origin- Branches
hit branch # list branches
hit branch <name> # create branch
hit checkout <name> # switch branch- History / Diff
hit log # view commits
hit show <commit-hash> # show a commit
hit diff <path> # show local changes for a fileHit uses a simple SSH-like remote format:
hit@hithub.com:<username>/<repo>.hit
Examples:
hit clone "hit@hithub.com:alice/project.hit"
hit remote add origin "hit@hithub.com:bob/notes.hit"A VS Code extension is available under packages/extension. It provides:
- Multi-repository support
- Staging/unstaging and diff viewing
- Commit/push operations per repository
- Branch switching and commit graph
Install from the Marketplace: https://marketplace.visualstudio.com/items?itemName=AirbornHarsh.hit
You can also install the packaged VSIX or use the Marketplace (when available).
- Web UI: https://hit.harshkeshri.com
- Server API lives in
packages/serverand exposes endpoints for repositories, branches, commits, and signed uploads.
- Fork and clone the repo
- Build CLI locally:
go build -o hit ./main.go
./hit version- Commit changes and open a PR