git 提交偷懶方法

我從來就是個(gè)懶人呻逆。

使用git提交的時(shí)候夸赫,敲一堆命令,繁瑣得很咖城。
首先可以定義別名縮短鍵入的指令

git config --global alias.st status
git config --global alias.ci commit
git config --global alias.df diff
git config --global alias.co checkout
git config --global alias.br branch
git config --global alias.mg merge

btw茬腿,這樣還是沒解決問題啊,還是很煩啊宜雀。
試試看能不能寫個(gè)sh腳本滓彰,自動(dòng)提交呢?
有想法就做他州袒,于是有了下面的腳本揭绑。

#!/bin/sh
#定義變量
# 用戶自己分支
G_GIT_BRANCH="your_branch"
G_GIT_MASTER_BRANCH="master"
G_GIT_PATH=$(pwd)
echo  "\033[32m 路徑:$G_GIT_PATH  \033[0m"
echo  "\033[32m 分支:$G_GIT_BRANCH  \033[0m"

cd $G_GIT_PATH

function checkGitStatus
{
    STR1="nothing to commit, working tree clean"
    STR2="no changes added to commit"
    STR3="Changes not staged for commit"
    STR4="Changes to be committed"
    STR5="both modified: "
    STR6="Untracked files:"
    OUTTYPE=-1
    out=$(git status)
    result=$(echo $out | grep "$STR5")
    if [[ "$result" != "" ]];then
        OUTTYPE=5
    fi
    if [ "$OUTTYPE" == "-1" ];then
        result=$(echo $out | grep "$STR1")
        if [[ "$result" != "" ]];then
            OUTTYPE=1
        fi
    fi
    if [ "$OUTTYPE" == "-1" ];then
        result=$(echo $out | grep "$STR6")
        if [[ "$result" != "" ]];then
            OUTTYPE=6
        fi
    fi
    if [ "$OUTTYPE" == "-1" ];then
        result=$(echo $out | grep "$STR2")
        if [[ "$result" != "" ]];then
            OUTTYPE=2
        fi
    fi
    if [ "$OUTTYPE" == "-1" ];then
        result=$(echo $out | grep "$STR3")
        if [[ "$result" != "" ]];then
            OUTTYPE=3
        fi
    fi
    if [ "$OUTTYPE" == "-1" ];then
        result=$(echo $out | grep "$STR4")
        if [[ "$result" != "" ]];then
            OUTTYPE=4
        fi
    fi
    if [ "$OUTTYPE" == "-1" ];then
        result=$(echo $out | grep "$STR5")
        if [[ "$result" != "" ]];then
            OUTTYPE=5
        fi
    fi
    if [ "$OUTTYPE" == "1" ];then
        git status
        echo "本地沒什么可提交的了."
        echo "選擇操作 1:Pull master 2:退出"
        read choose
        if [ $choose = "1" ];then
            echo "執(zhí)行:git checkout $G_GIT_MASTER_BRANCH"
            ret=$(git checkout $G_GIT_MASTER_BRANCH )
            #判斷本地是否還有未提交的??
            echo "執(zhí)行:git pull origin $G_GIT_MASTER_BRANCH"
            git pull origin $G_GIT_MASTER_BRANCH
            echo "執(zhí)行:git checkout $G_GIT_BRANCH"
            git checkout $G_GIT_BRANCH
            echo "選擇操作 1:Merge主分支 2:退出"
            read choose
            if [ $choose = "1" ];then
                echo "執(zhí)行:git merge $G_GIT_MASTER_BRANCH"
                ret=$(git merge $G_GIT_MASTER_BRANCH)
                #TODO:檢查是否有沖突
                kstr="conflicts" #沖突
                result=$(echo $ret | grep "$kstr")
                if [[ "$result" != "" ]];then
                    echo "發(fā)現(xiàn)沖突"
                    exit 2
                fi
                echo "選擇操作 1:提交到自己分支 2:退出"
                read choose
                if [ $choose = "1" ];then
                    echo "執(zhí)行:git push origin $G_GIT_BRANCH"
                    git push origin $G_GIT_BRANCH
                    echo "結(jié)束,退出腳本"
                    exit 2  
                else
                    echo "退出腳本"
                    exit 2  
                fi
            else
                echo "退出腳本"
                exit 2  
            fi
        else
            echo "輸入錯(cuò)誤郎哭,退出腳本"
            exit 2  
        fi
    elif [ "$OUTTYPE" = "2" ]||[ "$OUTTYPE" = "6" ];then #
        git status
        echo "發(fā)現(xiàn)有修改"
        echo "選擇操作 1:執(zhí)行'git add -A' 2:退出手動(dòng)處理"
        read choose
        if [ $choose = "1" ];then
           git add -A
        elif [ $choose = "2" ];then
            echo "手動(dòng)提交他匪,退出腳本"
            exit 2  
        else
            echo "輸入錯(cuò)誤,退出腳本"
            exit 2  
        fi
    elif [ "$OUTTYPE" = "3" ];then
        git status
        echo "發(fā)現(xiàn)有修改"
        echo "選擇操作 1:執(zhí)行'git add -A' 2:退出手動(dòng)處理"
        read choose
        if [ $choose = "1" ];then
           git add -A
        elif [ $choose = "2" ];then
            echo "手動(dòng)提交夸研,退出腳本"
            exit 2  
        else
            echo "輸入錯(cuò)誤邦蜜,退出腳本"
            exit 2  
        fi
    elif [ "$OUTTYPE" = "4" ];then
        echo "發(fā)現(xiàn)有修改"
        echo "選擇操作 1:執(zhí)行'git commit -m 備注' 2:退出"
        read choose
        if [ $choose = "1" ];then
            echo "\033[31m 輸入提交類型:          \033[0m"
            echo "\033[32m:feat(新功能feature)     \033[0m"
            echo "\033[32m:fix(修補(bǔ)bug)           \033[0m"
            echo "\033[32m:docs(文檔documentation) \033[0m"
            echo "\033[32m:style(格式)            \033[0m"
            echo "\033[32m:refactor(重構(gòu))         \033[0m"
            echo "\033[32m:test(增加測(cè)試)       \033[0m"
            echo "\033[32m:chore(構(gòu)建過程或輔助工具的變動(dòng)) \033[0m"
            read commitType
            echo "輸入您的commit文字"
            read commitStr
            git commit -m " $commitType commit:$commitStr"
            echo "已經(jīng) commit"

        elif [ $choose = "2" ];then
            echo "手動(dòng)提交,退出腳本"
            exit 2  
        else
            echo "輸入錯(cuò)誤亥至,退出腳本"
            exit 2  
        fi
    elif [ "$OUTTYPE" = "5" ];then
        echo "發(fā)現(xiàn)沖突!!!"
        exit 2  
    fi
}

while true;
do
    checkGitStatus
done

將腳本命名 autogit.sh,放在git目錄悼沈。在ignore文件里面忽略本文件。
然后就可以用啦姐扮!

在目錄直接敲 sh autogit.sh,然后一路敲 1絮供,回車。

如果遇到每次都要求輸入帳號(hào)密碼茶敏,可以設(shè)置長(zhǎng)久存儲(chǔ)

git config --global credential.helper store
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末壤靶,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子惊搏,更是在濱河造成了極大的恐慌贮乳,老刑警劉巖忧换,帶你破解...
    沈念sama閱讀 206,311評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異向拆,居然都是意外死亡亚茬,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門浓恳,熙熙樓的掌柜王于貴愁眉苦臉地迎上來刹缝,“玉大人,你說我怎么就攤上這事奖蔓≡薏荩” “怎么了?”我有些...
    開封第一講書人閱讀 152,671評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵吆鹤,是天一觀的道長(zhǎng)厨疙。 經(jīng)常有香客問我,道長(zhǎng)疑务,這世上最難降的妖魔是什么沾凄? 我笑而不...
    開封第一講書人閱讀 55,252評(píng)論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮知允,結(jié)果婚禮上撒蟀,老公的妹妹穿的比我還像新娘。我一直安慰自己温鸽,他們只是感情好保屯,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評(píng)論 5 371
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著涤垫,像睡著了一般姑尺。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上蝠猬,一...
    開封第一講書人閱讀 49,031評(píng)論 1 285
  • 那天切蟋,我揣著相機(jī)與錄音,去河邊找鬼榆芦。 笑死柄粹,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的匆绣。 我是一名探鬼主播驻右,決...
    沈念sama閱讀 38,340評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼犬绒!你這毒婦竟也來了旺入?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 36,973評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤凯力,失蹤者是張志新(化名)和其女友劉穎茵瘾,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體咐鹤,經(jīng)...
    沈念sama閱讀 43,466評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡拗秘,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了祈惶。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片雕旨。...
    茶點(diǎn)故事閱讀 38,039評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖捧请,靈堂內(nèi)的尸體忽然破棺而出凡涩,到底是詐尸還是另有隱情,我是刑警寧澤疹蛉,帶...
    沈念sama閱讀 33,701評(píng)論 4 323
  • 正文 年R本政府宣布活箕,位于F島的核電站,受9級(jí)特大地震影響可款,放射性物質(zhì)發(fā)生泄漏育韩。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評(píng)論 3 307
  • 文/蒙蒙 一闺鲸、第九天 我趴在偏房一處隱蔽的房頂上張望筋讨。 院中可真熱鬧,春花似錦摸恍、人聲如沸悉罕。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽壁袄。三九已至,卻和暖如春谜慌,著一層夾襖步出監(jiān)牢的瞬間然想,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來泰國打工欣范, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留变泄,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 45,497評(píng)論 2 354
  • 正文 我出身青樓恼琼,卻偏偏與公主長(zhǎng)得像妨蛹,于是被迫代替她去往敵國和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子晴竞,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 本文為 Git教程的學(xué)習(xí)筆記蛙卤,教程源自廖雪峰的博客。這是一個(gè)由淺入深,學(xué)完后能立刻上手的Git教程颤难。另神年,附上另一本...
    七弦桐語閱讀 6,231評(píng)論 5 47
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)行嗤,斷路器已日,智...
    卡卡羅2017閱讀 134,599評(píng)論 18 139
  • + (NSString *)pathWithComponents(NSArray *)components 根據(jù)c...
    _舊時(shí)光閱讀 770評(píng)論 0 0
  • 耶和華是我的牧者,我必不至于缺乏栅屏! 耶和華要保護(hù)你飘千,從今時(shí)直到永遠(yuǎn),你出你入耶和華都要保護(hù)你栈雳。 苦難是恩典护奈,患難是...
    凌賢武閱讀 1,909評(píng)論 0 0
  • 眼珠好難畫,有空再重畫~ 變形的檸檬~ 好考驗(yàn)?zāi)托母缛遥粋€(gè)下午都在畫霉旗,是兩個(gè)課時(shí),畫到最后沒耐心了磺箕。 不過還是很開心...
    豬小賢閱讀 219評(píng)論 1 0