Your Git workflow, in motion.

Git Tide is a command-line tool that sits on top of Git. Update branches, review Pull Requests and guard your repository with local hooks, without leaving the Git you already use.

Version 1.0.0. For macOS, Linux and Windows. Needs Git 2.30+.

$ tide update
→ Fetching origin/stage
→ Updating local stage
→ Integrating stage into feature/login (merge)
✓ Updated to include stage
Sample session. Output format comes from the CLI; names are examples.

Less repetition. More flow.

Everyday Git work is a string of small, repetitive steps: refreshing a base branch, bringing it into your branch, checking out a Pull Request, remembering the commit format, keeping secrets out of history. Git Tide turns these routines into consistent commands and local checks, with Git still at the centre.

  • One command for the routines you repeat daily.
  • Rules your whole team shares, kept in the repository.
  • Mistakes caught before they leave your machine.

A layer above Git. Not a replacement.

  1. You run a tide command.
  2. It reads .tide.yml from the repository root.
  3. It checks the repository is safe: no detached HEAD, no uncommitted tracked changes, no merge in progress.
  4. It runs the Git you already have, one step at a time.
  5. It prints each step, and stops with a hint when something needs you.

No server, no database, no telemetry. Only branch (with --remote or --github), create, update, push, review and pr touch the network, and each says so as it runs.

What Git Tide does

Everything below is in version 1.0.0.

One command. A clearer workflow.

$ git switch stage
$ git pull --ff-only origin stage
$ git switch feature/login
$ git merge stage
main stage feature/login
stage gains a commit; feature/login merges it.

The base branch comes from .tide.yml. Tide also fast-forwards local stage and refuses if uncommitted work is at risk. Conflicts are left in Git’s normal state for you to resolve.

Git Tide in action

Built around the way developers work.

Download Git Tide

Version 1.0.0. One self-contained program: you do not need Go.

Checksums (SHA-256)

Or install from the terminal on macOS and Linux. It checks the download against the checksums first:

repo=https://github.com/Cellestias/git-tide
version=$(curl -fsSLI -o /dev/null -w '%{url_effective}' "$repo/releases/latest" | sed 's#.*/##')
os=$(uname -s | tr '[:upper:]' '[:lower:]')
case $(uname -m) in x86_64 | amd64) arch=amd64 ;; arm64 | aarch64) arch=arm64 ;; *) echo "unsupported CPU: $(uname -m)" >&2 ;; esac
name=tide_${version}_${os}_${arch}
curl -fsSLO "$repo/releases/download/$version/$name.tar.gz"
curl -fsSLO "$repo/releases/download/$version/checksums.txt"
grep " $name.tar.gz\$" checksums.txt | { sha256sum -c - 2>/dev/null || shasum -a 256 -c -; }
tar -xzf "$name.tar.gz"
sudo install -m 755 "$name/tide" /usr/local/bin/tide
tide --version

Needs Git 2.30+. On Windows, install Git for Windows, because the hooks are shell scripts. Windows support is best-effort: the full test suite runs on Linux and macOS.

Prefer to build it? Clone the repository and run make install (needs Go 1.26.10+).

FAQ

Does Git Tide replace Git?

No. Tide runs the Git you already have and needs no server or database. Plain git commands keep working alongside it.

Is it tied to a language or framework?

No. Tide works on Git repositories, not on your code.

Do I need GitHub?

Not for create, update, push, init, doctor or the hooks, which only need Git. review, pr and branch --github use the GitHub API, and review and pr support github.com remotes. Public repositories work without a token; pr needs one, from GITHUB_TOKEN, GH_TOKEN or a .env file at the repository root.

Can it prevent every secret from being committed?

No. Detectors cover AWS access key IDs, GitHub, Slack, Stripe live and Google API keys, and private key headers, plus your own patterns. It is best-effort: if a secret reaches a commit, rotate it.

Does local branch protection replace GitHub branch protection?

No. Anyone can bypass hooks with --no-verify. Keep branch protection enabled on GitHub; it is the authoritative control.

What happens to my existing Git hooks?

They are preserved. tide init renames an existing hook to <hook>.pre-tide, and it still runs after Tide’s checks pass.

Does it run on Windows?

Yes, on a best-effort basis. Programs for Windows x86-64 and ARM64 are published and started on every release. The full test suite runs on Linux and macOS only, and the hooks are shell scripts that Git for Windows runs with its bundled shell. Report problems on Issues.

Is Git Tide available now?

Yes. Version 1.0.0 is published with ready-to-run programs for macOS, Linux and Windows, and you can still build it from source.