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.

Early development. Build from source today: Git 2.30+, Go 1.23+, Linux or macOS.

$ 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 create, update, push, review and pr touch the network, and each says so as it runs.

What Git Tide does

Implemented in the source today. There is no pre-built release yet, so you build it yourself.

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.

Built around the way developers work.

Ready to move with the flow?

Build it from source and try it in a repository of your own.

git clone https://github.com/Cellestias/git-tide.git && cd git-tide
make build

Needs Git 2.30+ and Go 1.23+. Then put the tide binary on your PATH.

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 and pr use the GitHub API and support github.com remotes. review works without a token on public repositories; pr needs GITHUB_TOKEN.

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?

Not tested. The installed hooks are POSIX shell scripts, so Linux and macOS are the supported targets for now.

Is Git Tide available now?

You can build it from source. A versioned, pre-built release is not published yet.