paulund

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-branch for 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.yaml file.

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 diff and git 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.