-
-
Save igrigorik/6666860 to your computer and use it in GitHub Desktop.
alias gh="open \`git remote -v | grep [email protected] | grep fetch | head -1 | cut -f2 | cut -d' ' -f1 | sed -e's/:/\//' -e 's/git@/http:\/\//'\`" |
The alias commands above using print need the argument escaped. awk '{print $2}'
should be awk '{print \$2}'
.
Full command here:
alias gh="open \`git remote -v | grep fetch | awk '{print \$2}' | sed 's/git@/http:\/\//' | sed 's/com:/com\//'\`| head -n1"
This one works great for me https://github.com/paulirish/git-open
I recently updated mine to work regardless of whether you are in the current repo. It supports both relative and absolute paths:
#!/bin/sh
## Open file or directory in web browser
## Syntax: git-web $path [$branch]
path=${1:-"."}
if [ -d ${path} ]; then
file_name=""
cd ${path}
else
file_name=$(basename ${path})
cd $(dirname ${path})
fi
project_url=$(git config remote.origin.url | sed "s~:~/~" | sed "s~git@~https://~" | sed "s~\.git~~")
branch=${2:-$(git symbolic-ref --quiet --short HEAD)}
git_directory=$(git rev-parse --show-prefix)
echo ${project_url}/tree/${branch}/${git_directory}${file_name}
open ${project_url}/tree/${branch}/${git_directory}${file_name}
With the new gh cli tool just use: gh repo view --web
If using VS Code, one could also install the GitLens extension (good for other things too) and use the command palette (cmd + shift + P) > GitLens: Open Repository on Remote
With the new gh cli tool just use:
gh repo view --web
even easier, gh browse
@drewbo worked for me on mac, thanks
Edit: Well, I don't actually want to use this, because when I source my .bash_profile
now, I get this as a result:
fatal: not a git repository (or any of the parent directories): .git
Quick and dirty if you already have the vim plugin rhubarb installed:
vim +GBrowse +q
i made some adjustments https://gist.github.com/ricardoribas/open-branch