新人入職虏两,對(duì)項(xiàng)目組的上線規(guī)則和遇到的問(wèn)題做總結(jié)!
@important世剖! 對(duì)待上線要有敬畏心理定罢,上線需謹(jǐn)慎!8槔引颈!
一耕皮、環(huán)境搭建:
npm
npm install npm
fis3
npm install -g fis3
smarty
npm install -g fis3-smarty
二境蜕、分步指南
- 拉分支
1、 在icode里搜自己要開發(fā)的代碼庫(kù)
2凌停、 要開發(fā)一個(gè)新需求的時(shí)候粱年,拉一個(gè)新分支
-?在新的分支開發(fā)
1、 先把代碼clone到本地工作區(qū)
? ? ? ? git clone xxx ? 復(fù)制效率云中的命令
2罚拟、? 切換分支
? ? ? ? git pull 拉取分支 ? ??
? ? ? ? git branch? 查看當(dāng)前所有分支 ??
? ? ? ? git branch -a???? 查看所有分支台诗,可以看到自己所在分支
? ? ? ? git checkout --track orgin/xxx ? ? 跟蹤遠(yuǎn)程分支完箩,并切到自己的分支
? ? ? ? git checkout *** ? 切換到本地分支
? ? ? ? 綁定遠(yuǎn)程分支:
---git remote add origin?http://xuran_iwaimai.baidu.com_waimai@xiaolvyun.baidu.com/git/waimai/wlfe_logistics/logistics-frontend
或:
git remote origin set-url?https://xuran_iwaimai.baidu.com_waimai@xiaolvyun.baidu.com/git/waimai/wlfe_logistics/logistics-frontend
再次查看(git branch),看是否指向自己的分支
注:切換分支前要先把當(dāng)前分支commit拉队,可以先不用push弊知。
切換分支后可以進(jìn)行本地開發(fā)。
本地開發(fā)時(shí)可代理到某RD的開發(fā)機(jī)進(jìn)行調(diào)試(以xiaoyan為例):
npm run start xiaoyan
記琢豢臁:push代碼前要pbuild秩彤!推開發(fā)機(jī)之前也要pbuild!就是把你的本地代碼編譯一下事哭,dist目錄下是編譯后的文件.
注:devserver/config/proxy.conf.js ? RD開發(fā)機(jī)地址所在
命令:npm run pbuild
推開發(fā)機(jī)(以xiaoyan為例):
fis3 release xiaoyan
fis3 release xiaoyan -w (監(jiān)聽)
fis3 release xiaoyan -wL (監(jiān)聽且自動(dòng)刷新瀏覽器)
-?代碼提交
總體流程:
1漫雷、把要提交的文件的信息添加到索引庫(kù)中 - add;
2鳍咱、 提交到本地代碼庫(kù) - commit降盹;
3、 推送到遠(yuǎn)程代碼庫(kù) - push
4谤辜、查看狀態(tài) - status
具體操作:
git add -A 本地倉(cāng)庫(kù)添加代碼
git commit -m?“” ? 注釋需要寫
git status? 檢查當(dāng)前分支狀態(tài)---一共有三種狀態(tài):已提交(committed)蓄坏、已修改(modified)和已暫存(staged)
git merge origin/master 合并主干代碼,在推代碼之前需要進(jìn)行此操作每辟,以免將他人代碼沖掉
git push ?推代碼
git add .???? 將當(dāng)前目錄下的所有文件添加到暫存區(qū)
git add 文件名??? 單獨(dú)添加
-?解決落后
如果你的分支落后主干剑辫,那么提測(cè)和上線前一定要把主干代碼合并到你的分支上。
git fetch origin
git merge origin/master
有沖突的就解決沖突渠欺,然后重新pbuild妹蔽,重新add,重新commit挠将,重新push胳岂,然后去發(fā)布吧。
注:如果只有編譯后的文件沖突舔稀,就跳過(guò)解決沖突的步驟乳丰,直接pbuild。
-?發(fā)布
※ 發(fā)布之前内贮,在物流大群和外賣大群里發(fā)消息(避免負(fù)責(zé)同一項(xiàng)目的兩人沖突上了)
代碼push完成之后产园,icloud上會(huì)進(jìn)行編譯,在編譯完之后夜郁,點(diǎn)擊發(fā)布什燕,獲取發(fā)布的版本號(hào)
-?上線
1、訪問(wèn)公有云(太平洋)
? ? ? 自行在太平洋的“我”中申請(qǐng)權(quán)限
2竞端、接下來(lái)屎即,選擇相應(yīng)的服務(wù)樹,創(chuàng)建上線單->添加模塊
3、選擇相應(yīng)模塊技俐,版本號(hào)就填前面自動(dòng)生成的那個(gè)->創(chuàng)建上線單(填寫上線單名稱乘陪,并發(fā)度控制可以填10、20)→創(chuàng)建并上線
4雕擂、上到mirror的時(shí)候啡邑,先打住井赌!
改hosts文件(Mac的host地址:/private/etc谣拣,只能復(fù)制然后替換,不能直接修改):
10.19.144.43 yizhan.baidu.com (上到mirror上的話族展,需要改動(dòng)host森缠,表示在mirror上驗(yàn)證)
然后訪問(wèn)http://yizhan.baidu.com:8068/?在mirror機(jī)子上測(cè)試一下
注:用Chrome的訪客方式訪問(wèn),如果頁(yè)面打不開就看看是不是8068端口沒(méi)加上仪缸。
如果出了問(wèn)題贵涵, 就立即回滾!
注:回滾步驟(上線到mirror時(shí)進(jìn)行此操作):
在上線頁(yè)面點(diǎn)擊回滾后恰画,發(fā)布單作廢宾茂,需要在icloud中取消發(fā)布,這是可以重新推代碼拴还;然后修改代碼后跨晴,重新add commit push,然后新建一個(gè)發(fā)布單片林。
如果沒(méi)有問(wèn)題端盆,就繼續(xù)發(fā)布~
5、上到全量的時(shí)候费封,把hosts文件改回來(lái)焕妙,再在http://yizhan.baidu.com測(cè)試
如果出了問(wèn)題,還得回滾!
沒(méi)有問(wèn)題就上完啦弓摘!
-?合主干
1焚鹊、上完線記得到iCode上合并回主干!
※ 最后再在大群里吼一聲:done韧献。末患。。
------------------------------over------------------------------------
相關(guān)網(wǎng)址
效率云(icode):http://xiaolvyun.baidu.com/waimai/icode/repo
公有云(pacific):http://pacific.inwaimai.baidu.com/
前端線下開發(fā)及發(fā)布上線相關(guān)說(shuō)明:線下開發(fā)及發(fā)布上線步驟
分支開發(fā)分支發(fā)布:http://xiaolvyun.baidu.com/docs/archives/1137
效率云icode使用指南:效率云icode使用指南
Git相關(guān)
1锤窑、當(dāng)你從遠(yuǎn)程倉(cāng)庫(kù)clone時(shí)璧针,實(shí)際上Git自動(dòng)把本地的master分支和遠(yuǎn)程的master分支對(duì)應(yīng)起來(lái)了,并且果复,遠(yuǎn)程倉(cāng)庫(kù)的默認(rèn)名稱是origin
2陈莽、git常用命令
命令備注
git add ?. ?將所有修改的文件添加到本地暫存區(qū)
git add ? ?將制定文件添加到本地暫存區(qū)
git commit -m "commit msg" ? 提交當(dāng)前工作空間的修改內(nèi)容
git commit --amend - m "commit msg" ?修改最近一次提交的內(nèi)容
git push origin HEAD:refs/for/ ?將本地的修改提交到遠(yuǎn)程倉(cāng)庫(kù)
git pull ? 拉取遠(yuǎn)程倉(cāng)庫(kù)最新代碼
git merge ? 將代碼merge到當(dāng)前分支
git checkout . ?撤銷本地所有文件修改
git checkout ? 撤銷指定文件修改
git branch -a ?查看當(dāng)前所有分支
git checkout ** ? 切換分支
git diff ?查看本地修改與遠(yuǎn)程倉(cāng)庫(kù)的diff
git log ?查看歷史提交記錄
git revert <$id> ?恢復(fù)某次提交的狀態(tài)渤昌,恢復(fù)動(dòng)作本身也創(chuàng)建次提交對(duì)象
git revert HEAD ?恢復(fù)最后一次提交的狀態(tài)
git rm ? 從版本庫(kù)中刪除文件
git stash ?暫存
git stash list ?列出所有stash
git stash apply ?恢復(fù)暫存的內(nèi)容
git stash drop ?刪除暫存區(qū)
git branch -D zhongbao-frontend_1-0-45_BRANCH ?刪除分支
未完待續(xù)虽抄。走搁。。