mirror of
https://github.com/tj/git-extras.git
synced 2026-09-10 07:26:17 -04:00
55 lines
1.3 KiB
Bash
Executable file
55 lines
1.3 KiB
Bash
Executable file
#!/usr/bin/env bash
|
|
|
|
VERSION="7.0.0"
|
|
INSTALL_SCRIPT="https://raw.githubusercontent.com/tj/git-extras/master/install.sh"
|
|
|
|
update() {
|
|
local bin="$(command -v git-extras)"
|
|
local prefix=${bin%/*/*}
|
|
local orig=$PWD
|
|
|
|
curl -s $INSTALL_SCRIPT | PREFIX="$prefix" bash /dev/stdin \
|
|
&& cd "$orig" \
|
|
&& echo "... updated git-extras $VERSION -> $(git extras --version)"
|
|
}
|
|
|
|
updateForWindows() {
|
|
local bin="$(command -v git-extras)"
|
|
local prefix=${bin%/*/*}
|
|
local orig=$PWD
|
|
|
|
# we need to clean up /tmp manually on windows
|
|
cd /tmp \
|
|
&& rm -rf ./git-extras \
|
|
&& echo "Setting up 'git-extras'...." \
|
|
&& git clone https://github.com/tj/git-extras.git &> /dev/null \
|
|
&& cd git-extras \
|
|
&& git checkout \
|
|
$(git describe --tags $(git rev-list --tags --max-count=1)) \
|
|
&> /dev/null \
|
|
&& ./install.cmd "$prefix" \
|
|
&& cd "$orig" \
|
|
&& echo "... updated git-extras $VERSION -> $(git extras --version)"
|
|
rm -rf /tmp/git-extras &> /dev/null
|
|
}
|
|
|
|
case "$1" in
|
|
-v|--version)
|
|
echo $VERSION && exit 0
|
|
;;
|
|
update)
|
|
platform=$(uname -s)
|
|
if [ "${platform::9}" = "CYGWIN_NT" ] || \
|
|
[ "${platform::5}" = "MINGW" ] || \
|
|
[ "${platform::7}" = "MSYS_NT" ]
|
|
then
|
|
updateForWindows
|
|
else
|
|
update
|
|
fi
|
|
;;
|
|
*)
|
|
git extras --help
|
|
;;
|
|
esac
|