Command-line shortcuts to make git easier
您最多能選擇 25 個主題 主題必須以字母或數字為開頭,可包含連接號「-」且最長為 35 個字元。
lazy-git/g

132 行
1.7 KiB

#!/bin/bash
function _status {
echo
echo -e "\e[0;33m> git status\e[0m"
echo
git status
echo
}
function _pull {
echo
echo -e "\e[0;33m> git pull\e[0m"
echo
git pull
echo
}
function _send {
_status
if [ -z "`git status --porcelain`" ]
then
echo -e "\e[0;31m Nothing to commit.\e[0m"
echo
exit
fi
echo -e "\e[0;32m Going to ADD all, COMMIT and PUSH.\e[0m"
echo -e "\e[0;32m Enter commit message (leave blank to abort).\e[0m"
echo
echo -n -e "\e[1;36m [msg]: \e[0m"
read msg
echo
if [ -z "$msg" ]
then
echo -e "\e[0;31m Aborted.\e[0m"
echo
exit
fi
echo -e "\e[0;33m> git add --all\e[0m"
echo
git add --all
echo
echo -e "\e[0;33m> git commit -m \"$msg\"\e[0m"
echo
git commit -m "$msg"
echo
echo -e "\e[0;33m> git push\e[0m"
echo
git push
echo
}
function _stage {
_status
if [ -z "`git status --porcelain`" ]
then
echo -e "\e[0;31m Nothing to commit.\e[0m"
echo
exit
fi
echo -e "\e[0;32m Going to ADD all and COMMIT.\e[0m"
echo -e "\e[0;32m Enter commit message (leave blank to abort).\e[0m"
echo
echo -n -e "\e[1;36m [msg]: \e[0m"
read msg
echo
if [ -z "$msg" ]
then
echo -e "\e[0;31m Aborted.\e[0m"
echo
exit
fi
echo -e "\e[0;33m> git add --all\e[0m"
echo
git add --all
echo
echo -e "\e[0;33m> git commit -m \"$msg\"\e[0m"
echo
git commit -m "$msg"
echo
}
case $1 in
"check" | "status")
_status
;;
"pull")
_pull
;;
"send")
_send
;;
"push")
echo -e "\e[0;33m> git push\e[0m"
echo
git push
echo
;;
"stage" | "commit" | "add")
_stage
;;
*)
echo -e "\n\e[0;31m Invalid ACTION '$1', use one of {check/status, pull, send, push, stage/commit} !\e[0m\n";
;;
esac