This commit is contained in:
Brent Beardsley 2015-02-08 18:30:18 +00:00
commit dcd1bb09c6
2 changed files with 40 additions and 14 deletions

View file

@ -27,6 +27,26 @@ curl -o ~/bin/git-open https://raw.githubusercontent.com/paulirish/git-open/mast
chmod +x ~/bin/git-open
```
## Gitlab support
To configure gitlab support you need to set gitopen.gitlab.domain:
```
git config --global gitopen.gitlab.domain [yourdomain.here]
```
or
```
git config gitopen.gitlab.domain [yourdomain.here] in your local repository
```
By default it goes to the tree view but can be changed to go to the commits view like so:
```
git config gitopen.gitlab.urldifference commits
```
## Thx
@jasonmccreary did [all the hard work](https://github.com/jasonmccreary/gh)

View file

@ -44,6 +44,20 @@ if grep -q github <<<$giturl; then
elif grep -q bitbucket <<<$giturl; then
giturl=${giturl/git\@bitbucket\.org\:/https://bitbucket.org/}
providerUrlDifference=branch
else
gitlab_domain=$(git config --get gitopen.gitlab.domain)
if [ ! -z "$gitlab_domain" ]; then
if grep -q $gitlab_domain <<<$giturl; then
giturl=${giturl/git\@${gitlab_domain}:/https://${gitlab_domain}/}
gitlab_urldifference=$(git config --get gitopen.gitlab.urldifference)
if [ -z "$gitlab_urldifference" ]; then
providerUrlDifference=tree
else
providerUrlDifference=$gitlab_urldifference
fi
fi
fi
fi
giturl=${giturl%\.git}
@ -65,20 +79,12 @@ fi
giturl=${giturl/tree\/master/}
# get current open browser command
if [ $(uname -s) == "Darwin" ]
then
open=open
elif [ "$TERM" == "cygwin" ]
then
if [ "$MSYSTEM" == "MINGW32" ]
then
open=start
else
open=cygstart
fi
else
open=xdg-open
fi
case $( uname -s ) in
Darwin) open=open;;
MINGW*) open=start;;
CYGWIN*) open=cygstart;;
*) open=xdg-open;;
esac
# open it in a browser
$open $giturl &> /dev/null