About

Metadata

  • Last updated , by andys8
  • License BSD-3-Clause
  • Maintained by: andys8@users.noreply.github.com

  • Lottery factor: 1

Links

Installation

Package Flags

Use the -f option with cabal commands to enable flags

    static (off by default)

Readme

git-brunch Actions

A git command-line tool to work with branches

screenshot

Features

  • Quickly checkout local or remote branch
  • Merge or rebase a branch
  • Search for a branch
  • Delete a branch
  • Fetch / Update
  • Worktree support

Usage

Run git-brunch or git brunch.

Git alias (optional)

An alias like git b (or gb) is a good idea to quickly access the tool.

git config --global alias.b brunch

Installation

The installation is possible in multiple ways, and there are binaries available to download.

Download binary
  1. Download from releases
  2. Rename the file to git-brunch
  3. Make it executable with chmod +x git-brunch
  4. Add to your PATH
Arch Linux

git-brunch is in the AUR

yay -S git-brunch
pamac install git-brunch
Homebrew (macOS)

You can install git-brunch via a Homebrew tap. This uses a prebuilt macOS binary.

brew tap andys8/tap
brew install git-brunch
macOS Security Note

Since the binary is not signed with an Apple Developer certificate, macOS might block it initially. After installation, you can run this command to allow the binary to execute:

xattr -d com.apple.quarantine $(which git-brunch)
FreeBSD

git-brunch can be installed from the official FreeBSD package repository

pkg install hs-git-brunch
Nix

git-brunch is part of the nix package manager

nix-env -i git-brunch
Stack

git-brunch can installed with the Haskell build tool stack

stack install git-brunch # --resolver=lts-lts-20.4
Install from source

git-brunch can be installed from source. It can be forked and modified, if you like to.

git clone https://github.com/andys8/git-brunch
cd git-brunch
stack install
# or nix-env -if .

Development

Run application
stack run
Run tests
stack test --file-watch
Build statically linked
stack install --flag git-brunch:static
Generate nix
cabal2nix --shell . > default.nix

Release

  • Bump version in package.yaml and default.nix
  • stack build
  • Create a commit v0.0.0
  • Create a tag v0.0.0
  • Push commit and push tag
  • Release on github will be created by CI
  • Update release description
  • stack upload .
  • Update AUR
  • git-gone: Lists or removes "gone" branches, that is, local branches which used to have an upstream branch on a remote which is now removed.
  • lazygit: Terminal UI for git commands
  • gitui: Terminal UI focused on speed in giant repositories