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.6+
  • Git

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.0.tar.gz (5.6 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.0-py3-none-any.whl (6.5 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: lbranch-0.1.0.tar.gz
  • Upload date:
  • Size: 5.6 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.0.tar.gz
Algorithm Hash digest
SHA256 357b4c59ec528bd5b03dbb37e083cb8a2ce7cba8721990f3d6f43e7026c31f2c
MD5 79f08d9320ea93ef72fa7a928a9152ba
BLAKE2b-256 f1d8c75314351c8e24c41cd319ed778e177b2b2e63bf6baf0d4d6bc6cb0507f9

See more details on using hashes here.

File details

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

File metadata

  • Download URL: lbranch-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 6.5 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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b79e12e01cb4a105228f861e896880227f0dde714e035e2a20d96eb219f66700
MD5 cb11f075e04ec0f885af6b8949d7010f
BLAKE2b-256 e51722324d05c60a1592b545853dc8f644acc66555487b79d9644eab8d681ecf

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