Git Tools
Git Tools
A curated list of tools that complement your day-to-day Git workflow. Each category below covers a common need — from keeping secrets out of your history to visualising branches and automating housekeeping.
Security and Secret Detection
Accidentally committing API keys or credentials is a common and costly mistake. These tools scan your repository — either in real time or as a CI check — and flag any secrets before they reach production.
- GitLeaks — Scans your entire Git history for secrets, API keys, and tokens. Can run as a pre-commit hook or a CI step.
- TruffleHog — Finds and verifies secrets in Git repositories. Supports high-entropy string detection and regex-based scanning.
- git-secrets — An AWS-focused tool that prevents you from committing AWS credentials. Runs as a pre-commit hook.
Branch Management and Visualisation
Large repositories with many contributors can become difficult to navigate. These tools help you understand branch relationships and clean up stale branches.
- git-branch-manager — A terminal UI for browsing and managing branches interactively.
- git-flow — Enforces a branching model with dedicated branches for features, releases, and hotfixes. Widely adopted for structured release workflows.
Commit Quality and Conventional Commits
Consistent, well-structured commit messages make your history searchable and your changelogs automatic.
- Commitlint — Lints commit messages against a configured convention (typically Conventional Commits). Run it as a Git hook or in CI.
- Husky — A lightweight tool for adding Git hooks to your project. Commonly used to run Commitlint or linters on every commit.
- Conventional Changelog — Generates a changelog automatically from your conventional commit history.
History Rewriting and Clean-Up
Sometimes you need to tidy up your history — removing large files, rewriting authors, or squashing noisy commits. Use these tools with care; they alter published history.
- BFG Repo Cleaner — A faster alternative to
git filter-branchfor removing large files or sensitive data from your repository history. - git-filter-repo — The modern, recommended replacement for
git filter-branch. Handles complex rewrites with a simple Python script.
Workflow Automation and CI Integration
These tools fit neatly into CI/CD pipelines and help enforce repository standards without manual intervention.
- GitHub CLI (
gh) — Interact with GitHub directly from the terminal: create pull requests, view issues, and manage repositories without leaving your shell. - pre-commit — A framework for managing pre-commit hooks across multiple languages and tools. Define all your checks in a single
.pre-commit-config.yamlfile.
Diff and Merge Tools
Visual diff and merge tools reduce friction when resolving conflicts or reviewing changes locally.
- Delta — A syntax-highlighting diff viewer for the terminal. Drop it into your Git config as a pager for
git diffandgit log. - Meld — A visual diff and merge tool for Linux. Integrates directly with Git as a merge tool.
- Sourcetree — A free GUI client for Git that provides a clear visual of branches, merges, and diffs.