有什么办法让前端自己去发布版本? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
zjsxwc
V2EX    程序员

有什么办法让前端自己去发布版本?

  zjsxwc
zjsxwc 2018-09-27 13:37:35 +08:00 5011 次点击
这是一个创建于 2577 天前的主题,其中的信息可能已经有所发展或是发生改变。

前后端分离确实爽,但是每次前端要版本更新发布还要别人介入,我想提供一个后台机制(不提供服务器密码等信息,最好是图形界面不容易犯错)让前端自己发布他的改动,然后就没别人的事情了。

比如平台后台可以让前端填个git <tag_name>,然后在前端目录自动执行git pull; git checkout <tag_name>

或者平台后台提供一个 zip 包上传表单,每次上传完后就解压这个 zip 包覆盖整个前端目录。

第 1 条附言    2018-09-27 21:27:54 +08:00
Jenkins,drone 之类的适合自己长期维护的项目,我目前的这个项目是私活,我写完后端拿完钱就滚蛋了,前端同学也是一样,我只在上 QQ 和他们交流,最后交付的也就只是一台部署好代码的服务器和源代码,所以为了方便我甩锅才会有这个帖子!
第 2 条附言    2018-09-27 21:37:13 +08:00
为了能让前端不用部署本地后端代码就能利用线上测试服务器接口直接开发,我还专门用 golang 写了个代理线上测试域名与本地前端代码转发的小工具。

目前的问题是每次前端同学要发版本了就要我把他静态代码放到服务器上。
第 3 条附言    2018-09-28 17:48:24 +08:00
用 golang 写了个小脚本,接收 githook 通知后,执行 git pull, node 编译,scp 上传覆盖目录后搞得
29 条回复    2021-03-05 20:22:29 +08:00
joyme
    1
joyme  
   2018-09-27 13:59:04 +08:00
用 jenkins 可以做到
tinycold
    2
tinycold  
   2018-09-27 14:13:36 +08:00 via Android
同意楼上的 jenkins,前端发版本肯定是自己的事儿,为啥还要其他人帮忙
wu67
    3
wu67  
   2018-09-27 14:19:12 +08:00
git hook 呗, 监听 master 分支, 有推送就让服务器 git pull 然后 npm run build
Sapp
    4
Sapp  
   2018-09-27 14:21:25 +08:00
这根本不需要前端啊,你自己抓一下 git 的更新,build 一下不就可以了吗?
quickma
    5
quickma  
   2018-09-27 14:22:47 +08:00   1
gitlab ci
xiaohuojian
    6
xiaohuojian  
   2018-09-27 14:24:36 +08:00
脉冲云,这个可以了解一下。
worldnode
    7
worldnode  
   2018-09-27 14:26:40 +08:00
jinkens?
riverxs
    8
riverxs  
   2018-09-27 14:26:48 +08:00
jenkins + Atlantis,了解一下
whypool
    9
whypool  
   2018-09-27 14:30:16 +08:00
CI 了解一下
NNS71L068O2v70DB
    10
NNS71L068O2v70DB  
   2018-09-27 16:37:59 +08:00 via Android
自动发布系统
NotNil1
    11
NotNil1  
   2018-09-27 16:41:21 +08:00
让前端去学
3img
    12
3img  
   2018-09-27 16:49:17 +08:00
以前的搞法运维写好 shell 了,前端可以通过后台自动发布。现在是 gitLab
junfengwang11
    13
junfengwang11  
   2018-09-27 17:31:37 +08:00
jenkins + gitlab + 钩子
lxsunbin
    14
lxsunbin  
   2018-09-27 17:35:14 +08:00
我们有自己的发布系统
yemoluo
    15
yemoluo  
   2018-09-27 17:36:49 +08:00
现在不都是 gitlab + 钩子自动打版?

我们现在是,合并到主分支? 自动测试,测试通过自动打标签,打完标签自动发布。

我们的前端都用 VUE。和后端一点关系都没有
zjsxwc
    16
zjsxwc  
OP
   2018-09-27 21:30:44 +08:00 via Android
只是个私活,要求是快快快!
zhzer
    17
zhzer  
   2018-09-27 21:58:26 +08:00 via Android   1
抓个运维或者测开,写个小脚本不就 ok
agdhole
    18
agdhole  
   2018-09-27 22:12:06 +08:00 via Android
githook 就行了
测试机装个宝塔上面有 hook 工具
kyf0722
    19
kyf0722  
   2018-09-27 22:32:44 +08:00
devOps 好好学一下,先后端、移动端都可以自动发布。最方便的是直接使用 gitlab ci/cd
moxiaonai
    20
moxiaonai  
   2018-09-27 22:45:10 +08:00 via Android   1
1 楼正解
youngxhui
    21
youngxhui  
   2018-09-27 22:46:20 +08:00 via Android
ci cd 集成
evlos
    22
evlos  
   2018-09-27 22:47:05 +08:00
现在的前端连 CI 都不会用吗
xuanbg
    23
xuanbg  
   2018-09-27 22:47:44 +08:00
前端一样 CI 啊
xuanbg
    24
xuanbg  
   2018-09-27 22:49:55 +08:00
简易发布的话,让前端学会打包 docker 镜像,然后一条命令启动容器就行了
yoshiyuki
    25
yoshiyuki  
   2018-09-28 09:47:39 +08:00
用 rsync 或者 ftp
前端自己在本地打包,打包完之后同步文件就行了
sniffles
    26
sniffles  
   2018-09-28 10:17:22 +08:00
发版本跟前后端没关系。
偷懒就写脚本 git pull + build
功能全一点就上 jenkins
Socket
    27
Socket  
   2018-09-28 13:40:51 +08:00
diamond 或者 feb
xcstream
    28
xcstream  
   2018-09-28 15:14:47 +08:00
githook 加 node 写个简单的服务器
Yrobot
    29
Yrobot  
   2021-03-05 20:22:29 +08:00 via Android
之前公司用的 jenkins+docker 做前端打包,rancher 做版本管理。
关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2764 人在线   最高记录 6679       Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 27ms UTC 02:15 PVG 10:15 LAX 19:15 JFK 22:15
Do have faith in what you're doing.
ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86