Skip to main content

A Git utility that shows recently checked-out branches in chronological order and lets you quickly switch between them.

Project description

lbranch

lbranch ("last branch") is a git utility that shows your recently checked out branches in chronological order, with an optional interactive checkout.

Usage

# Show last 5 branches (default)
lbranch
# Show last N branches
lbranch -n 3
lbranch --number 3
# Show branches and select one to checkout
lbranch -s
lbranch --select
# Show last N branches and select one
lbranch -n 3 -s
# Color control
lbranch --no-color     # Disable colored output
lbranch --force-color  # Force colored output even in non-TTY environments

Example Output

Last 5 branches:
1) feature/new-ui
2) main
3) bugfix/login
4) feature/api
5) develop

Color Support

lbranch automatically detects if your terminal supports colors:

  • Colors are disabled when output is not to a terminal (when piped to a file or another command)
  • Colors are disabled on Windows unless running in a modern terminal (Windows Terminal, VS Code, etc.)
  • You can force colors on with --force-color or off with --no-color
  • lbranch respects the NO_COLOR and FORCE_COLOR environment variables

Exit Codes

lbranch follows the standard exit codes from sysexits.h for better integration with scripts and other tools:

  • 0: Success
  • 64: Command line usage error (not in a git repository, invalid selection)
  • 66: Cannot open input (no branch history/no commits)
  • 69: Service unavailable (git command not found)
  • 75: Temporary failure (branch checkout failed, retry possible)
  • 130: Operation interrupted (Ctrl+C)

These follow Unix conventions where exit codes 64-78 are standardized error codes, and 128+N indicates termination by signal N.

Requirements

  • Python 3.7+
  • Git

Installation

Using pip

You can install lbranch directly from PyPI:

pip install lbranch

Using Homebrew

You can install lbranch using Homebrew:

brew tap dcchuck/lbranch
brew install lbranch

License

Distributed under the MIT License. See LICENSE

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lbranch-0.1.3.tar.gz (5.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lbranch-0.1.3-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file lbranch-0.1.3.tar.gz.

File metadata

  • Download URL: lbranch-0.1.3.tar.gz
  • Upload date:
  • Size: 5.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for lbranch-0.1.3.tar.gz
Algorithm Hash digest
SHA256 62f6b12cf5881c63b55597cd9c8527fb6e4e51ea061668a276cc52629a559115
MD5 17fe60afbe1f7f1ed4f908029d84bf67
BLAKE2b-256 faf23e835c2b0a8a032128967a563dfba1de2cd018d84bc1a72efd10a90890f1

See more details on using hashes here.

File details

Details for the file lbranch-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: lbranch-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.12.8

File hashes

Hashes for lbranch-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 91fcacf4571c4746463ceeed8961af642913884bae1cfd8835f1e54b09097b82
MD5 25bab997390d5a2a674a6e9bfb51ec89
BLAKE2b-256 c8bffd9524bbcb6c157c5e13bce1077b199f54cecc3789a0a34b8bcbdcf4a5ec

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page