新人入職,對項目組的上線規則和遇到的問題做總結!
@important! 對待上線要有敬畏心理,上線需謹慎!!!
一、環境搭建:
npm
npm install npm
fis3
npm install -g fis3
smarty
npm install -g fis3-smarty
二、分步指南
- 拉分支
1、 在icode里搜自己要開發的代碼庫
2、 要開發一個新需求的時候,拉一個新分支
-?在新的分支開發
1、 先把代碼clone到本地工作區
? ? ? ? git clone xxx ? 復制效率云中的命令
2、? 切換分支
? ? ? ? git pull 拉取分支 ? ??
? ? ? ? git branch? 查看當前所有分支 ??
? ? ? ? git branch -a???? 查看所有分支,可以看到自己所在分支
? ? ? ? git checkout --track orgin/xxx ? ? 跟蹤遠程分支,并切到自己的分支
? ? ? ? git checkout *** ? 切換到本地分支
? ? ? ? 綁定遠程分支:
---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),看是否指向自己的分支
注:切換分支前要先把當前分支commit,可以先不用push。
切換分支后可以進行本地開發。
本地開發時可代理到某RD的開發機進行調試(以xiaoyan為例):
npm run start xiaoyan
記住:push代碼前要pbuild!推開發機之前也要pbuild!就是把你的本地代碼編譯一下,dist目錄下是編譯后的文件.
注:devserver/config/proxy.conf.js ? RD開發機地址所在
命令:npm run pbuild
推開發機(以xiaoyan為例):
fis3 release xiaoyan
fis3 release xiaoyan -w (監聽)
fis3 release xiaoyan -wL (監聽且自動刷新瀏覽器)
-?代碼提交
總體流程:
1、把要提交的文件的信息添加到索引庫中 - add;
2、 提交到本地代碼庫 - commit;
3、 推送到遠程代碼庫 - push
4、查看狀態 - status
具體操作:
git add -A 本地倉庫添加代碼
git commit -m?“” ? 注釋需要寫
git status? 檢查當前分支狀態---一共有三種狀態:已提交(committed)、已修改(modified)和已暫存(staged)
git merge origin/master 合并主干代碼,在推代碼之前需要進行此操作,以免將他人代碼沖掉
git push ?推代碼
git add .???? 將當前目錄下的所有文件添加到暫存區
git add 文件名??? 單獨添加
-?解決落后
如果你的分支落后主干,那么提測和上線前一定要把主干代碼合并到你的分支上。
git fetch origin
git merge origin/master
有沖突的就解決沖突,然后重新pbuild,重新add,重新commit,重新push,然后去發布吧。
注:如果只有編譯后的文件沖突,就跳過解決沖突的步驟,直接pbuild。
-?發布
※ 發布之前,在物流大群和外賣大群里發消息(避免負責同一項目的兩人沖突上了)
代碼push完成之后,icloud上會進行編譯,在編譯完之后,點擊發布,獲取發布的版本號
-?上線
1、訪問公有云(太平洋)
? ? ? 自行在太平洋的“我”中申請權限
2、接下來,選擇相應的服務樹,創建上線單->添加模塊
3、選擇相應模塊,版本號就填前面自動生成的那個->創建上線單(填寫上線單名稱,并發度控制可以填10、20)→創建并上線
4、上到mirror的時候,先打住!
改hosts文件(Mac的host地址:/private/etc,只能復制然后替換,不能直接修改):
10.19.144.43 yizhan.baidu.com (上到mirror上的話,需要改動host,表示在mirror上驗證)
然后訪問http://yizhan.baidu.com:8068/?在mirror機子上測試一下
注:用Chrome的訪客方式訪問,如果頁面打不開就看看是不是8068端口沒加上。
如果出了問題, 就立即回滾!
注:回滾步驟(上線到mirror時進行此操作):
在上線頁面點擊回滾后,發布單作廢,需要在icloud中取消發布,這是可以重新推代碼;然后修改代碼后,重新add commit push,然后新建一個發布單。
如果沒有問題,就繼續發布~
5、上到全量的時候,把hosts文件改回來,再在http://yizhan.baidu.com測試
如果出了問題,還得回滾!
沒有問題就上完啦!
-?合主干
1、上完線記得到iCode上合并回主干!
※ 最后再在大群里吼一聲:done。。。
------------------------------over------------------------------------
相關網址
效率云(icode):http://xiaolvyun.baidu.com/waimai/icode/repo
公有云(pacific):http://pacific.inwaimai.baidu.com/
前端線下開發及發布上線相關說明:線下開發及發布上線步驟
分支開發分支發布:http://xiaolvyun.baidu.com/docs/archives/1137
效率云icode使用指南:效率云icode使用指南
Git相關
1、當你從遠程倉庫clone時,實際上Git自動把本地的master分支和遠程的master分支對應起來了,并且,遠程倉庫的默認名稱是origin
2、git常用命令
命令備注
git add ?. ?將所有修改的文件添加到本地暫存區
git add ? ?將制定文件添加到本地暫存區
git commit -m "commit msg" ? 提交當前工作空間的修改內容
git commit --amend - m "commit msg" ?修改最近一次提交的內容
git push origin HEAD:refs/for/ ?將本地的修改提交到遠程倉庫
git pull ? 拉取遠程倉庫最新代碼
git merge ? 將代碼merge到當前分支
git checkout . ?撤銷本地所有文件修改
git checkout ? 撤銷指定文件修改
git branch -a ?查看當前所有分支
git checkout ** ? 切換分支
git diff ?查看本地修改與遠程倉庫的diff
git log ?查看歷史提交記錄
git revert <$id> ?恢復某次提交的狀態,恢復動作本身也創建次提交對象
git revert HEAD ?恢復最后一次提交的狀態
git rm ? 從版本庫中刪除文件
git stash ?暫存
git stash list ?列出所有stash
git stash apply ?恢復暫存的內容
git stash drop ?刪除暫存區
git branch -D zhongbao-frontend_1-0-45_BRANCH ?刪除分支
未完待續。。。