用git打更新包的辦法分享
前言
相信很多人都有過(guò)這種經(jīng)歷,當(dāng)修改了一堆bug后,要更新代碼到服務(wù)器上,此時(shí),最簡(jiǎn)單的方式是將項(xiàng)目文件全部上傳一次,這種方式可行,但不可取。為什么?你懂的!
其實(shí)可以直接在服務(wù)器用git pull代碼的方式來(lái)更新代碼,但如果遇到你的服務(wù)器是linux服務(wù)器并且不帶UI界面的,除非你命令行指令及git很熟悉,要不然遇到代碼沖突還是比較麻煩的,小編這方面的水平有限。當(dāng)然也有其他原因,不推薦此方式更新。
下面,小編為大家介紹下利用git來(lái)打更新包。
打包原理:
利用git archive輸出兩個(gè)提交間的改變

NEW_COMMIT_ID_HERE 較新的提交ID
OLD_COMMIT_ID_HERE 較舊的提交ID(以此作為更新打包起始點(diǎn))


現(xiàn)在我有兩次提交(commit)
第一次提交的ID為438eac0,提交了一個(gè)文件
第二次提交的ID為4d5baf6,提交了三個(gè)文件
然后按照上面打包指令:
git archive -o update.zip 4d5baf6 $(git diff –name-only 438eac0 4d5baf6)
執(zhí)行一下指令,會(huì)發(fā)現(xiàn)目錄中多了一個(gè)update.zip壓縮文件

小編解壓文件看一下有什么內(nèi)容

是小編第二個(gè)提交的文件及目錄,這說(shuō)明了OLD_COMMIT_ID_HERE僅作為打包的起始點(diǎn),但并不包含OLD_COMMIT_ID_HERE提交的內(nèi)容。
當(dāng)然NEW_COMMIT_ID_HERE 和OLD_COMMIT_ID_HERE之間可以間隔多個(gè)COMMIT的,這樣就會(huì)打多個(gè)COMMIT的內(nèi)容打包到一個(gè)壓縮包內(nèi)。
最后,只要解壓出來(lái)的內(nèi)容通過(guò)FTP工具上傳到服務(wù)器即可。
總結(jié)
上面展示的內(nèi)容只是單一的代碼更新,實(shí)際的更新可能還會(huì)涉及多個(gè)方面的,例如數(shù)據(jù)庫(kù)腳本、配置文件等,小編在此文章中就不作過(guò)多的討論。有興趣的同學(xué)可以百度或者GOOGLE。
結(jié)束語(yǔ)
謝謝各位的閱讀,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)和工作能帶來(lái)幫助。如果有疑問可以留言討論,謝謝大家對(duì)腳本之家的支持。
相關(guān)文章
Linux?自動(dòng)化構(gòu)建工具make/Makefile的使用詳解
這篇文章主要介紹了Linux?自動(dòng)化構(gòu)建工具?make/Makefile,要如何編譯.c文件,關(guān)鍵就在于Makefile是怎么寫的,下面我們主要介紹這兩者的使用,需要的朋友可以參考下2022-04-04
一天一個(gè)shell命令 linux文本內(nèi)容操作系列-cut命令詳解
這篇文章主要介紹了一天一個(gè)shell命令 linux文本內(nèi)容操作系列-cut命令詳解,需要的朋友可以參考下2016-06-06
shell中嵌套執(zhí)行expect命令實(shí)例
這篇文章主要介紹了shell中嵌套執(zhí)行expect命令實(shí)例,一直都想把expect的操作寫到bash腳本里,這樣就不用我再寫兩個(gè)腳本來(lái)執(zhí)行了,需要的朋友可以參考下2014-12-12
在Shell腳本中調(diào)用另一個(gè)腳本的三種方式講解
今天小編就為大家分享一篇關(guān)于在Shell腳本中調(diào)用另一個(gè)腳本的三種方式講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2019-04-04
linux shell中實(shí)現(xiàn)循環(huán)日期的實(shí)例代碼
這篇文章主要介紹了linux shell中實(shí)現(xiàn)循環(huán)日期的實(shí)例代碼,文中還給大家提到了LINUX SHELL遍歷日期(指定輸入兩個(gè)日期)的實(shí)現(xiàn)方法,感興趣的朋友跟隨小編一起看看吧2018-09-09
shell中對(duì)xargs命令傳參進(jìn)行編輯
本文主要介紹了shell中對(duì)xargs命令傳參進(jìn)行編輯,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-01-01

