Socket
Book a DemoInstallSign in
Socket

git-web-url

Package Overview
Dependencies
Maintainers
1
Versions
5
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

git-web-url

A CLI tool and also a Python library can print the url of a local file in a git repo so you can one-click to open it in web browser.

pipPyPI
Version
1.0.1
Maintainers
1

.. image:: https://readthedocs.org/projects/git-web-url/badge/?version=latest :target: https://git-web-url.readthedocs.io/en/latest/ :alt: Documentation Status

.. image:: https://github.com/MacHu-GWU/git_web_url-project/actions/workflows/main.yml/badge.svg :target: https://github.com/MacHu-GWU/git_web_url-project/actions?query=workflow:CI

.. image:: https://codecov.io/gh/MacHu-GWU/git_web_url-project/branch/main/graph/badge.svg :target: https://codecov.io/gh/MacHu-GWU/git_web_url-project

.. image:: https://img.shields.io/pypi/v/git-web-url.svg :target: https://pypi.python.org/pypi/git-web-url

.. image:: https://img.shields.io/pypi/l/git-web-url.svg :target: https://pypi.python.org/pypi/git-web-url

.. image:: https://img.shields.io/pypi/pyversions/git-web-url.svg :target: https://pypi.python.org/pypi/git-web-url

.. image:: https://img.shields.io/badge/✍️_Release_History!--None.svg?style=social&logo=github :target: https://github.com/MacHu-GWU/git_web_url-project/blob/main/release-history.rst

.. image:: https://img.shields.io/badge/⭐_Star_me_on_GitHub!--None.svg?style=social&logo=github :target: https://github.com/MacHu-GWU/git_web_url-project

.. image:: https://img.shields.io/badge/Link-API-blue.svg :target: https://git-web-url.readthedocs.io/en/latest/py-modindex.html

.. image:: https://img.shields.io/badge/Link-Install-blue.svg :target: install_

.. image:: https://img.shields.io/badge/Link-GitHub-blue.svg :target: https://github.com/MacHu-GWU/git_web_url-project

.. image:: https://img.shields.io/badge/Link-Submit_Issue-blue.svg :target: https://github.com/MacHu-GWU/git_web_url-project/issues

.. image:: https://img.shields.io/badge/Link-Request_Feature-blue.svg :target: https://github.com/MacHu-GWU/git_web_url-project/issues

.. image:: https://img.shields.io/badge/Link-Download-blue.svg :target: https://pypi.org/pypi/git-web-url#files

Welcome to git_web_url Documentation

.. image:: https://git-web-url.readthedocs.io/en/latest/_static/git_web_url-logo.png :target: https://git-web-url.readthedocs.io/en/latest/

git_web_url is a CLI tool and also a Python library that prints the URL of a local file in a git repo so you can one-click to open it in web browser.

Currently it supports:

Git Hosting Services:

  • GitHub
  • GitHub Enterprise
  • GitLab
  • GitLab Enterprise
  • BitBucket
  • BitBucket Enterprise
  • AWS CodeCommit

Git Clone Protocols:

  • https
  • ssh
  • aws_codecommit (git-remote-codecommit <https://docs.aws.amazon.com/codecommit/latest/userguide/setting-up-git-remote-codecommit.html>_)

CLI Usage

.. note::

**Breaking Change in 1.0.1**: The CLI now uses subcommands. The previous ``gwu`` command
is now ``gwu url``. For example, ``gwu /path/to/file`` becomes ``gwu url /path/to/file``.

General Syntax

.. code-block:: bash

gwu <subcommand> [options]

Available Subcommands

  • url: Print the web URL for a file or folder in the git repository.
  • relpath: Print the relative path from the git repository root.

The url Subcommand

Print the web URL you can one-click to open in a web browser.

**Basic Usage**

cd into your git repo directory, or any folder inside, then run ``gwu url`` (or ``gitweburl url``). It prints the URL for the current branch and current directory:

.. code-block:: bash

    $ gwu url
    https://github.com/your_account/your_repo/tree/your_branch/path/to/current_directory

**Specify a File or Folder**

Provide the absolute path of the file or folder in your local git repo:

.. code-block:: bash

    $ gwu url /path/to/your_repo/path/to/your_file.py
    https://github.com/your_account/your_repo/blob/your_branch/path/to/your_file.py

**Branch Options**

Use the ``--branch`` (or ``-b``) flag to control which branch appears in the URL:

.. code-block:: bash

    # Use current branch (default behavior)
    $ gwu url
    https://github.com/your_account/your_repo/tree/feature-branch/

    # Use default branch (main/master) - URL without explicit branch
    $ gwu url --branch=default
    https://github.com/your_account/your_repo

    # Use a specific branch
    $ gwu url --branch=main
    https://github.com/your_account/your_repo/tree/main/

    # Short form
    $ gwu url -b develop
    https://github.com/your_account/your_repo/tree/develop/


The ``relpath`` Subcommand

Print the relative path from the git repository root to the given file or folder.

Basic Usage

.. code-block:: bash

# At repository root, prints "."
$ cd /path/to/your_repo
$ gwu relpath
.

# In a subdirectory, prints relative path
$ cd /path/to/your_repo/src/module
$ gwu relpath
src/module

Specify a File or Folder

.. code-block:: bash

$ gwu relpath /path/to/your_repo/src/module/file.py
src/module/file.py

Python API Usage

You can also use git_web_url as a Python library:

.. code-block:: python

from pathlib import Path
import git_web_url.api as gwu

# Get URL for a file using current branch
url = gwu.get_web_url(Path("/path/to/your_repo/file.py"))

# Get URL using default branch (main/master)
url = gwu.get_web_url(
    Path("/path/to/your_repo/file.py"),
    branch=gwu.DEFAULT_BRANCH,
)

# Get URL using a specific branch
url = gwu.get_web_url(
    Path("/path/to/your_repo/file.py"),
    branch="feature-branch",
)

.. _install:

Install

git_web_url is released on PyPI, so all you need is to:

.. code-block:: console

$ pip install git-web-url

To upgrade to latest version:

.. code-block:: console

$ pip install --upgrade git-web-url

FAQs

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts