第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定

關(guān)于線上靜態(tài)頁(yè)面資源更新的一些經(jīng)驗(yàn)分享

標(biāo)簽:
Linux

关于线上静态页面资源更新的一些经验分享

最近在负责公司的后台项目,包括了后端和前端。后端直接编译完打成jar包直接上线运行没什么问题。但是前端的页面文件更新每次都要把页面给运维,然后告诉运维路径让运维挨个替换,当然也可以整包替换,
但是如果文件比较多的情况下,整包替换就不合适了。因为现在开发的项目版本控制基本必不可少了,这时候可以利用版本控制软件来生成Patch文件,然后直接交给运维,让运维在项目根目录打补丁就行。

关于Linux的Patch

如果熟悉linux的话对patch命令肯定不陌生,linux很多软件代码的更新都用的是patch,相较于重新下载整份源码,patch文件体积小只需要更新改动的地方。patch本身和diff经常一起用的,具体的用法我就不详细介绍了,网上已经说明很多了。这里用来更新页面的思路其实和linux中的思想是一样的。
常用的的格式:

    patch -d /root/amqp -p0 -E  </root/amqp/0001-.patch

-d 指明了patch的工作目录,此处指源码的根目录。
-pN中的N表示忽略路径中的第几层。如patch文件中路径为a/src/main/java/spittr/chen/AlertServiceImpl.java,如果需要忽略前面的a目录就需要指明-p1
-E表示如果文件更新之后为空则删除这个文件。
-R表示反向,回滚更新
-b用于备份改动的文件,用于重要的操作

关于git

git作为最流行的版本控制软件也实现了diff和patch的功能,git导出patch有两种方式,git diff和git format-patch 。git diff用于生成通用的patch格式,而format-patch用于生成git专用的patch文件。不过我经过测试,两种生成的文件都是和linux的patch命令兼容的,也就是说两种生成的文件都可以直接使用patch命令来打补丁。不过这里有一个需要的需要注意的地方就是,git生成的patch文件中,在指明影响的文件路径时,默认原来的文件前面会加上路径a/,而改动后的文件前面会加上路径b/(我查看了git官网文档也有提及,但是不清楚为什么要默认这么写,如果有知道的希望能告知下),如下所示:

diff --git a/src/main/java/spittr/chen/AlertServiceImpl.java b/src/main/java/spittr/chen/AlertServiceImpl.javanew file mode 100644index 0000000..7c8ebd1
--- /dev/null+++ b/src/main/java/spittr/chen/AlertServiceImpl.java

所以在linux中使用的时候需要指明参数-p1来忽略第一层路径,或者在使用git diff命令时加上参数--no-prefix。

其实git本身也有对应于linux patch的命令apply,还有更为强大的am。但是要求是必须是git项目。如果使用的git项目,推荐使用git的命令尤其是am命令,他必须使用format-patch生成的文件,format-patch文件携带了提交的记录包括作者,提交注释,日期等等,信息和pull差不多。关于这两个命令网上有很多的教程这里不再说明。对于我这个需求。已经因为线上的页面文件一般是文件夹的形式存在,所以使用linux的patch即可满足需求。

关于Idea

如果你用的开发工具是Idea的话,idea可以很方便的生成patch文件。如下图:

5ba11324000125f807940372.jpg

在版本的控制的log标签页,选中自己需要生成补丁的提交记录右键即可生成patch文件。

这篇文章就总结到这里,希望能够对你有所帮助!

作者:陈芳志

出处:https://www.cnblogs.com/chenfangzhi/

本文版权归作者和博客园共有,欢迎保留出处转载!


點(diǎn)擊查看更多內(nèi)容
TA 點(diǎn)贊

若覺得本文不錯(cuò),就分享一下吧!

評(píng)論

作者其他優(yōu)質(zhì)文章

正在加載中
  • 推薦
  • 評(píng)論
  • 收藏
  • 共同學(xué)習(xí),寫下你的評(píng)論
感謝您的支持,我會(huì)繼續(xù)努力的~
掃碼打賞,你說(shuō)多少就多少
贊賞金額會(huì)直接到老師賬戶
支付方式
打開微信掃一掃,即可進(jìn)行掃碼打賞哦
今天注冊(cè)有機(jī)會(huì)得

100積分直接送

付費(fèi)專欄免費(fèi)學(xué)

大額優(yōu)惠券免費(fèi)領(lǐng)

立即參與 放棄機(jī)會(huì)
微信客服

購(gòu)課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)

舉報(bào)

0/150
提交
取消