公司的人越来越多了,现在的情况是都是 FTP 直接改生产环境,这样做很蛋疼,经常有人出错,请问一般企业如何处理本地开发的程序 上传到生产环境中....
1
liuchenwei2000 2016-01-15 15:33:19 +08:00
测试部才有权限打补丁,重启服务器,测试环境尚且要专职负责,何况生产环境?
一般都会有一个专职的人负责干这些事情,补丁或脚本要按规范给,然后定点统一打补丁重启服务等 |
2
zjq426 2016-01-15 17:29:48 +08:00
有一种东西叫版本控制工具。。。
|
3
ljcarsenal 2016-01-15 17:32:34 +08:00
走发布单 发布失败扣钱
|
4
slixurd 2016-01-15 17:34:49 +08:00
版本控制和这个有毛线关系
有一种东西叫配置分离工具。 |
5
ifconfig 2016-01-15 18:06:44 +08:00
@slixurd 请教下为什么和版本控制没关系呢?
我司用的是 Git 版本管理,测试服务器走 Dev 分支,正式服务器 Master 分支,测试工程师测试通过后我们把 Dev 合并到 Master 。这样不就解决了楼主的问题吗? |
6
lepig 2016-01-15 18:11:01 +08:00
有一种东西叫 rsync 不知道行不行 哈哈哈哈哈哈
|
7
SmiteChow 2016-01-15 18:13:17 +08:00
ci
|
8
slixurd 2016-01-15 18:22:22 +08:00
@ifconfig 如果你的配置不同分支不一样的内容,那你合并 Dev 到 Master 的时候就每次都要合并冲突了,就算你把配置文件放在 ignore list 里面,这也很不科学,修改配置后居然不能生效。
如果说你是从 feature 分支分别合并进 Dev 或者 Master 这还好处理一点。 配置管理一般都是运行时根据环境获取配置的。方法很多,最简单的就是扔到 ZooKeeper 。 |
9
clino 2016-01-15 18:57:29 +08:00 via Android
用 git 如果发生问题可以直接 checkout 回原来的版本
|
10
hustlike 2016-01-16 13:23:00 +08:00
只能说你们公司还活在上个世纪。。
|
11
zhouyg 2016-01-16 13:58:54 +08:00
FTP 啊,好难吐槽。回归正题,我觉得你们需要把存放打包代码和执行代码的服务器分开,我一般都这么搞:
1.一个服务器 A 集中存放各种公司代码,所有人都把代码放到这里。在这里,就可以把版本控制用起来 a.如搭建个 gitlab ,等 b.或者使用一些第三方的专门做企业代码托管, github ,等。 1.5 不确定,你们的代码是否需要 build ,打包之类的,如果有也可以放个专门的服务器。 2.执行部署的服务器,这里服务器就是通过配置一系列脚本,从 1 那里下载代码,执行,启动服务器之类。 总之思路就是: A (代码库) -> B (构建成可正式运行的包)-> C (执行代码,启动服务器) |