Supports : GitHub, GitLab, Gitea, Bitbucket, and Visualstudio.com.
Extension for Visual Studio Code which can be used to jump to a source code line in GitHub, GitLab, Gitea, Bitbucket and Visualstudio.com
Install
Tested with VsCode 0.10.1
Press F1 and narrow down the list commands by typing extension
. Pick Extensions: Install Extension
.
Simply pick the Open in GitHub / Bitbucket
extension from the list
Install Manual
Mac & Linux
cd $HOME/.vscode/extensions
git clone https://github.com/ziyasal/vscode-open-in-github.git
cd vscode-open-in-github
npm install
Windows
cd %USERPROFILE%\.vscode\extensions
git clone https://github.com/ziyasal/vscode-open-in-github.git
cd vscode-open-in-github
npm install
Usage
Command
Press F1 and type Open in GitHub
.
Press F1 and type Copy GitHub link to clipboard
.
(The URL for GitHub will also include line ranges if there are lines selected in the editor)
Press F1 and type Open Pull Request
.
Keybord Shortcut
Press Ctrl+L G to activate. Press Ctrl+L C to copy active line link to clipboard.
Context menu
Right click on explorer item and choose Open in GitHub
or Copy GitHub link to clipboard
.
Configure custom github domain
Add following line into workspace settings;
{
"openInGitHub.gitHubDomain": "your custom github domain here",
"openInGitHub.requireSelectionForLines": false, // If enabled, the copied or opened URL won't include line number(s) unless there's an active selection
"openInGitHub.useCommitSHAInURL": false,
"openInGitHub.providerType": "gitlab", // github, gitlab, gitea, bitbucket, ...
"openInGitHub.providerProtocol": "https" // https, http. Useful for custom domains that don't support https. Defaults to https.
}
Custom Settings
{
"openInGitHub.providerType": "custom", // important, otherwise the following settings will not be read
"openInGitHub.customProviderPath": "https://your-git-repo-hosting-domain:port/path-to-the-repo",
"openInGitHub.customBlobPath": "+", // for example, this is `blob` in gitlab
"openInGitHub.customLinePrefix": "#", // for example, this is `#L12` instead of just `#12` in most git hosting service
"openInGitHub.defaultPullRequestBranch": "master", // for example, this could be `development`
// optional
"openInGitHub.alwaysOpenInDefaultBranch": true // if you always work on your local branch, and checking it online will always get 404
}
Have fun..
Debug Travis CI locally
cd $your_vscode_open_in_github_local_directory_path
BUILD_ID="build-$RANDOM" && \
LATEST_GARNET_TAG_ID="1515445631-7dfb2e1" && \
MAPPED_DOCKER_PATH=/home/travis/vscode-open-in-github && \
docker run \
-name $BUILD_ID
-v $(pwd):$MAPPED_DOCKER_PATH \
-dit "travisci/ci-garnet:packer-$LATEST_GARNET_TAG_ID" /sbin/init && \
docker exec -it $BUILDID bash -l
# to rerun last command: look for the last container with docker ps
su - travis # to use nvm and npm
cd /vscode-open-in-github
# replicate steps in either A) .travis.yml B) worker log in Travis CI
Reference: Stackoverflow
Known Limitations
- Extension doesn't currently works with Git worktrees
Contributors
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
License
MIT Β© Ziya SARIKAYA @ziyasal & Contributors