Automic VaultAutomic Vault

brew

Install ugit with Homebrew, MacPorts, Nix

Undo git commands. Your damage control git buddy. Version 5.9 via Homebrew; verified from local package data.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install ugit

local Homebrew formula metadata

MacPortsverified · 94%
sudo port install ugit

MacPorts ports tree · devel/ugit/Portfile · source: api.github.com

Linux

Nixverified · 92%
nix profile install nixpkgs#ugit

nixpkgs package indexes · pkgs/by-name/ug/ugit/package.nix · source: api.github.com

overview

Package summary

Undo git commands. Your damage control git buddy

Commands and aliases

  • ugit

history

Project history and usage

ugit is a shell-oriented Git recovery helper for undoing common accidental Git operations from an interactive terminal workflow.

Project history

The public repository was created in 2021. The upstream README describes ugit as a guided tool for undoing Git mistakes, with support for operations such as commit, add, push, branch deletion, pull, reset, stash, merge, cherry-pick, and file restoration.

The author's project article, published on April 30, 2021, framed ugit as a small tool for beginner-to-intermediate Git users who otherwise lose time searching for recovery commands. The project later continued through tagged releases, including v5.0 in 2021 and v5.9 in 2025.

Adoption history

ugit's official README documents installation through Homebrew on macOS, an install script on Linux, Docker, shell plugin managers, and manual setup on Windows with Git Bash and fzf. The supplied package data records packaging in Homebrew, MacPorts, and Nix.

The README's news section records early attention in 2021 and 2022, including a Changelog News mention, a GitHub India Constellation talk about Git tooling, and the project passing 1,000 GitHub stars in October 2022.

How it is used

ugit is used after a Git mistake to pick a scenario and run the relevant recovery steps. It depends on Bash, Git, fzf, and standard Unix utilities, which makes it fit naturally into interactive shell use rather than IDE-only workflows.

The README also warns that some recovery paths depend on Git reflog retention, so package users may need to tune Git garbage-collection settings if they expect longer undo windows.

Why package nerds care

For package-manager users, ugit is a small example of terminal UX around an existing tool rather than a new VCS. Its value is packaging a set of hard-to-remember Git recovery recipes into a command that can be installed next to fzf, git-extras, and other shell helpers.

Timeline

  • 2021: Public GitHub repository created.
  • 2021: Author published the ugit project article and the project appeared on Changelog News.
  • 2021: v5.0 release published.
  • 2022: README recorded that ugit crossed 1,000 GitHub stars.
  • 2025: v5.9 release published.

Related projects

  • The README notes a command-name conflict with git-extras, because both projects can provide a git-undo command.
  • ugit is built around Git and fzf and is commonly installed alongside other shell and Git workflow helpers.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 1 platform targets.
  • Installs with 2 runtime dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

executables

Installed executables

CommandKindExposureNote
ugitcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version5.9
manager updated
local dataok
upstreamcurrent
latest detectedv5.9

https://github.com/Bhupesh-V/ugit

  • infoNo package-manager update timestamp was available.low confidence

install metadata

Package metadata

Package keybrew:ugit
Version5.9
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/ugit
Homepagehttps://bhupesh.me/undo-your-last-git-mistake-with-ugit/
Repositoryhttps://github.com/Bhupesh-V/ugit
Upstream docshttps://github.com/Bhupesh-V/ugit#readme
LicenseMIT
Source archivehttps://github.com/Bhupesh-V/ugit/archive/refs/tags/v5.9.tar.gz
Dependenciesbash, fzf
Bottleavailable (on all)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameugit
Version Scheme0
Revision0
Conflicts With
  • git-extras
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Nix95%

ugit

nix profile install nixpkgs#ugit
  • normalized package name match
  • Matched by: Ugit
nixpkgs package indexes · api.github.com · nixpkgs package indexes: pkgs/by-name/ug/ugit/package.nix from https://api.github.com/repos/NixOS/nixpkgs/git/trees/master?recursive=1
MacPorts95%

ugit

sudo port install ugit
  • normalized package name match
  • Matched by: Ugit
MacPorts ports tree · api.github.com · MacPorts ports tree: devel/ugit/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

  • Geiger risk classifier
  • Nucleus package database
  • av.db category and tag curation
  • cross-ecosystem install command graph
  • curated package history
  • external package-manager database matches
  • package relationship graph
  • package version freshness
  • package-page enrichment