Zach’s ugly mug (his face)

Zach Leatherman

Navigate directly to a GitHub Issue

February 07, 2019

At Filament Group when we do new feature or bug fix branch, our workflow is to create a new branch and name it using the GitHub issue number. A bug fix for Issue #3214 would be live in a branch named 3214 (e.g. git branch -B 3214).

Sometimes I’ll want a shortcut to navigate directly to this issue on the GitHub web site. I added this function to my .zshrc (.bash_profile if you bash) to do just that. Now I can type ghissue in my project’s terminal window and the issue will open in my web browser.

  1. Find the current branch name (holds the issue number)
  2. Finds the origin github repository (should work with git: or https urls). If you use another remote name, you’ll want to change this.
  3. Pieces those two together to make the GitHub issue url.
function ghissue() {
if [ -z "$1" ]
then branch=$(git rev-parse --abbrev-ref HEAD)
else
branch="$1"
fi

repo=$(git remote get-url origin | sed 's/git@//' | sed 's/github.com:/github.com\//' | sed 's/\.git//')
url="https://${repo}/issues/${branch}"
open $url
}

Usage

ghissue

Go directly to a specific issue (not the current branch name):

ghissue 3214

Very special thanks to John Bender who supplied the repo line.

Related via Jeff Lembeck: Hub from GitHub, a command-line tool that makes git easier to use with GitHub.

Zach’s ugly mug (his face)

Zach is a builder for the web with Netlify. He’s currently fixated on web fonts and static site generators. His public speaking résumé includes talks in eight different countries at events like Beyond Tellerrand, Smashing Conference, CSSConf, and The White House. He is an emeritus of Filament Group, NEJS CONF, and still helps out with NebraskaJS. Read more about Zach »

Previous
NebraskaJS Omaha
Next
Eleventy Quick Tip №8: Trigger a Netlify Build Every Day with IFTTT
Webmentions