1
jasonhzy 2018-04-17 10:02:41 +08:00
现在是在服务器上直接 git pull 代码,也可以本地代码直接上传到指定的服务器
|
2
jasonhzy 2018-04-17 10:05:15 +08:00
或者针对冲突查看下原因,再此基础上处理
|
3
loshine1992 2018-04-17 10:06:30 +08:00
肯定是服务器上的文件被改过了,hotfix 也要提交合并才行。
|
4
networm 2018-04-17 10:17:24 +08:00 via iPhone
Jenkins 上执行
git clean -df git fetch git reset --hard origin/master 这样可以保证 Jenskins 上的仓库与服务器上完全一致 |
5
awing 2018-04-17 10:17:28 +08:00
dist 目录里生成的东西,不应该提交上去吧。。。。。。。另外 gitlab 不能用 webhook 吗?
|
6
shalk 2018-04-17 10:20:18 +08:00 via iPhone
Jenkins 上“点一下”会产生冲突 没有描述清楚。改改 jenkins 的 job 吧.
|
7
rockyou12 2018-04-17 10:25:05 +08:00 via Android
Jenkins 的 scm 有好几种策略的,可以拉取前先还原的,lz 可以看下
|
8
vast0906 2018-04-17 10:27:32 +08:00
给个建议,gitlab 中存放源代码,jenkins 做编译,然后 ansible 将编译好的包传到对应机器,通过 jenkins 的构建参数化和 ansible 的 tag。这样的好处在于 jenkins 只需要一台,编译打包不需要在本地执行。
|
9
lcorange 2018-04-17 10:50:35 +08:00
我是在 jenkins 里面编译,然后把生成好的 dist 目录打包,然后 scp 传到部署的机子,解压部署。
dist 目录是不加入 git 的 |
10
ox180 2018-04-17 10:50:50 +08:00
关于出现冲突,应该前端解决吧,解决冲突完,提交代码仓库,然后通过钩子推给 jenkins,jenkins 再去做其他事情就行了。不需要手动点下 jenkins....
|
11
pmispig 2018-04-17 12:40:18 +08:00
pull 之前先执行
git reset --hard git clean -fdx |
12
jinyang656 2018-04-17 12:53:43 +08:00
git clean -fd
git checkout -f xxx |
13
aleung 2018-04-17 13:12:13 +08:00 via Android
用 gitlab 了,为啥不用 gitlab ci ?
|
14
Youen 2018-04-17 13:38:54 +08:00
step 里面部署完之后删除 workspace.
下次 git clone --depth=1 |
15
kisnows 2018-04-17 16:18:44 +08:00
dist 目录不上 git
|
16
zhoulouzi 2018-04-17 16:21:44 +08:00
jenkins 为什么要解决冲突问题。
|
17
fengbica 2018-04-17 16:28:14 +08:00
自己解决冲突,结贴。
|