VSCode plugin to quickly open files on Github and other providers. View Git blame information, copy permalinks and more. See the "commands" section of the README for more details.
Install
From online marketplace
Open the online marketplace listing for Githubinator and click "Install". Follow the prompts to open VSCode and install Githubinator.
From VSCode
In VSCode, type CMD
+P
and enter ext install chdsbd.githubinator
. Or search for and install chdsbd.githubinator
via the extensions tab.
From Github release
Download the extension package from the latest Github release and run code --install-extension githubinator-*.vsix
From source
With vsce
installed from NPM (yarn global add vsce
), clone this repo and run vsce package
. Install the resulting package with code --install-extension githubinator-*.vsix
Features

Commands
command |
copy URL |
open URL |
mode |
SHA-type |
Githubinator |
✅ |
❌ |
blob |
current branch |
Githubinator: Copy |
✅ |
❌ |
blob |
current branch |
Githubinator: Copy Master |
✅ |
❌ |
blob |
master branch |
Githubinator: Copy Permalink |
✅ |
❌ |
blob |
current SHA |
Githubinator: Copy Master Permalink |
✅ |
❌ |
blob |
master SHA |
Githubinator: On Master |
✅ |
✅ |
blob |
master branch |
Githubinator: Permalink |
✅ |
✅ |
blob |
current SHA |
Githubinator: Blame |
✅ |
✅ |
blame |
current branch |
Githubinator: Blame On Master |
✅ |
✅ |
blame |
master branch |
Githubinator: Blame Permalink |
✅ |
✅ |
blame |
current sha |
Githubinator: Repository |
✅ |
✅ |
open repo |
N/A |
Githubinator: History |
✅ |
✅ |
open history |
N/A |
Githubinator: Open PR |
❌ |
✅ |
open PR |
N/A |
Githubinator: Compare |
✅ |
✅ |
compare branch |
N/A |
Requirements
- Local Git repository. You must have a git repository configured with a remote. (
"origin"
is default but this can be changed in settings).
Extension Settings
githubinator.remote
: The default remote branch for a repository. (default: "origin"
)
githubinator.providers.github.remote
: Remote name to look for when identifying a Github origin. (default: "origin"
)
githubinator.providers.github.hostnames
: Hostnames for identifying a Github origin and building a URL. (default: ["github.com"]
)
githubinator.providers.gitlab.remote
: Remote name to look for when identifying a Gitlab origin. (default: "origin"
)
githubinator.providers.gitlab.hostnames
: Hostnames for identifying a Gitlab origin and building a url. (default: ["gitlab.com"]
)
githubinator.providers.bitbucket.remote
: Remote name to look for when identifying a Bitbucket origin. (default: "origin"
)
githubinator.providers.bitbucket.hostnames
: Hostnames for identifying a Bitbucket origin and building a url. (default: ["bitbucket.org"]
)
githubinator.providers.visualstudio.remote
: Remote name to look for when identifying a VisualStudio origin. (default: "origin"
)
githubinator.providers.visualstudio.hostnames
: Hostnames for identifying a VisualStudio origin and building a url. (default: ["dev.azure.com"]
)
Known Issues
TODO
Release Notes
0.3.0
- Support calling Githubinator without an open file.
- Don't copy URL when using "Open PR".
0.2.3
- Fix ref lookup to ensure most recent ref is always used.
0.2.2
- Fixed failure when running Githubinator with detached HEAD
0.2.1
- Remove artifact from logo export
0.2.0
- add history, open pr, and compare commands
- fix url copying for commands to match documentation in README
- fix "... on master" commands to use the master branch
0.1.1
- Add logo for Visual Studio Marketplace
0.1.0
- Add Bitbucket, Gitlab, Visualstudio providers
- Add support for multiple hostnames per provider in config
- Add support for custom origin per provider in config
0.0.1
Prior Art
This plugin is based on the Sublime Plugin by ehamiter with the same name.
* changeable in settings between permalink and branch
Development
# install dependencies
make install
# lint (tslint and formatting)
make lint
# format code
make format
# check formatting
make format-ci
# run tests
make test
# run linting and testing
make test-ci
VSCode instructions
Get up and running straight away
- Press
F5
to open a new window with your extension loaded.
- Run your command from the command palette by pressing (
Ctrl+Shift+P
or Cmd+Shift+P
on Mac) and typing Hello World
.
- Set breakpoints in your code inside
src/extension.ts
to debug your extension.
- Find output from your extension in the debug console.
Make changes
- You can relaunch the extension from the debug toolbar after changing code in
src/extension.ts
.
- You can also reload (
Ctrl+R
or Cmd+R
on Mac) the VS Code window with your extension to load your changes.
Run tests
- Open the debug viewlet (
Ctrl+Shift+D
or Cmd+Shift+D
on Mac) and from the launch configuration dropdown pick Extension Tests
.
- Press
F5
to run the tests in a new window with your extension loaded.
- See the output of the test result in the debug console.
- Make changes to
test/extension.test.ts
or create new test files inside the test
folder.
- By convention, the test runner will only consider files matching the name pattern
**.test.ts
.
- You can create folders inside the
test
folder to structure your tests any way you want.
Publish
vsce package
vsce login chdsbd
vsce publish <version>
Logo
Based on the Git Logo by Jason Long, licensed under the Creative Commons Attribution 3.0 Unported License..