Skip to main content

Open repositories, directories, and files in the browser

Project description

Git Browse

PyPI PyPI - Python Version PyPI - License

Build Status Code Climate Test Coverage

Open git repositories, commits, directories, and files in the browser. See also, git-reviewers.

Preview

This script can be added as a gitconfig alias to easily browse repositories on Git hosting services (e.g. github). It is built to model arcanist's browse command. It is specifically designed to have no dependencies so it should be easily installable and very portable.

Git Browse supports opening git repositories, commits, directories, and files:

Installation

HomeBrew (preferred for MacOS)

If you use Homebrew, you can install git-browse through the homebrew-albertyw tap:

brew install albertyw/albertyw/git-browse

Manual

If you don't use Homebrew, first clone this repository to somewhere on your system (perhaps in your dotfiles repository), then run <REPOSITORY_LOCATION>/install.sh.

Usage

$ git browse -h
'browse' is aliased to '!~/.dotfiles/scripts/git/git-browse/git_browse/browse.py --path=${GIT_PREFIX:-./}'
usage: browse.py [-h] [--path PATH] [-d] [-c] [-s] [-g] [-v] [target]

Open repositories, directories, and files in the browser. https://github.com/albertyw/git-browse

positional arguments:
  target             file, directory, git hash, or git branch you wish to browse

optional arguments:
  -h, --help         show this help message and exit
  --path PATH        relative path to the current git repository
  -d, --dry-run      Do not open the url in the brower, and only print to stdout
  -c, --copy         Copy url to clipboard, if available
  -s, --sourcegraph  Open objects in sourcegraph
  -g, --godocs       Open objects in godocs
  -v, --version      show program's version number and exit

Examples

Command Opens
git browse https://github.com/albertyw/git-browse
git browse README.md https://github.com/albertyw/git-browse/blob/master/README.md
git browse git_browse https://github.com/albertyw/git-browse/tree/master/git_browse/
git browse v1.1.1 https://github.com/albertyw/git-browse/commit/80b219dee0aaa86b378993cbf88511126b813c5f
git browse --sourcegraph https://sourcegraph.com/github.com/albertyw/git-browse
git browse --godocs https://godocs.io/github.com/albertyw/git-browse
git browse for Bitbucket https://bitbucket.org/albertyw/asdf
git browse for Gitlab https://gitlab.com/albertyw/asdf
git browse for Uber Phabricator https://code.uberinternal.com/diffusion/rASDF/repository/master/

Related Projects

Development

pip install -e .[test]
ruff check .
mypy .
coverage run -m unittest
coverage report

Publishing

  1. Update changelog and __version__ variable with a semantic version
  2. Commit changes, create a version tag, and push both
  3. Update albertyw/homebrew-albertyw

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

git_browse-2.13.11.tar.gz (12.8 kB view details)

Uploaded Source

Built Distribution

git_browse-2.13.11-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

Details for the file git_browse-2.13.11.tar.gz.

File metadata

  • Download URL: git_browse-2.13.11.tar.gz
  • Upload date:
  • Size: 12.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.0

File hashes

Hashes for git_browse-2.13.11.tar.gz
Algorithm Hash digest
SHA256 75585bd989658b01c5f4440e987adec03870d77ba3fc070af13a7cfb8bdf2e4f
MD5 9096e3e12d92138bd7db3c32d66daae8
BLAKE2b-256 bacb575fc775bb0c1ebedc4cefe26c0a8343486c58cbafef6c39ffea6f667a88

See more details on using hashes here.

File details

Details for the file git_browse-2.13.11-py3-none-any.whl.

File metadata

  • Download URL: git_browse-2.13.11-py3-none-any.whl
  • Upload date:
  • Size: 13.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.13.0

File hashes

Hashes for git_browse-2.13.11-py3-none-any.whl
Algorithm Hash digest
SHA256 591cac86a6871635225a33383e530957bc883d77020a9114617c95700689fe97
MD5 271124f213f815977ca2c6d56c3581f5
BLAKE2b-256 150f4b3ea228e3299c4c2d1e8ada4ac6fb99889ba809ba1f2c02245fa783450c

See more details on using hashes here.

Supported by

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