SCMLife.com

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1985|回复: 3

[讨论] 如何进行linux环境下开发编译环境的版本控制

[复制链接]
发表于 2016-6-25 17:58:40 | 显示全部楼层 |阅读模式
不知道有没有企业遇到类似以下的问题,如果您也有遇到,您在工作中是如何解决的呢?2 ?' T2 {1 R$ a' u4 K& d
- R% z+ N. ^$ B  c
先说假设的背景:某企业是在Linux和UNIX环境下开发,使用大概90%左右大量的开源软件和部分商业软件来开发产品,开发测试环境中总计用到的软件数量在100左右,开发测试员工约有几百人,同时并行的项目约有几十个,开发环境不尽相同,那么我们的问题来了:
' Z; o. y! b% f  G: E% k! v* P  Z
1、您是如何做到为开发测试人员快速部署开发测试环境的?这几百人的个人工作机开发环境是怎么来部署的?你的最快纪录是多少分钟呢?7 W) D3 Y( b! G% m8 v7 G; }" G
  o' l* ?- k) |. t6 G5 j8 r1 l! B' x
2、这上百个开发测试环境中用到的软件(含开源+商业软件)是如何来做版本控制的?
. {0 @7 s& y. H! i& J' a' G$ i+ d4 [# a0 d( U( v9 W  J7 p6 P2 Z! }
3、您是如何来保障开发环境的版本与源代码版本的一致性的,也就是说我能够随时还原出某个项目在任意时间点的开发环境,保证我源码可以编译成功。8 [9 A( X. r* y# l; \' q0 c
6 N. c/ j4 ~1 e5 O: g* n
4、您是如何让测试人员在测试环境发现的问题,能够尽量在开发环境复现的?( g0 i: c2 @9 n% `+ v/ Q8 j* v

. ]0 U5 n/ O* @; V- b4 c5、假设有几个项目的开发环境略有不同,比如都用gcc,但用到的编译版本不同,你是如何让同一参与多个项目的开发人员保持他们正确的开发环境?. R0 l5 x, W: |
     同样的困惑更适用于测试人员,因为他们真的有可能对多个项目进行测试,原因是他在这些项目中都是负责的同一模块。那么保持正确的测试环境就很重要。
+ l! r  I4 o9 G# y6 u) e# b
1 n& R2 e' t/ q# i. p+ }6、某款软件因为业务的需要,必须要做升级时,我们如何对整个项目组所有人员的开发环境进行升级?
# @! y( ]  X5 J. h7 M' {
- a3 `3 F4 _6 K/ {7、您的自动构建系统有没有考虑到开发环境的因素,在自动编译代码时自动调用该代码对应的开发环境?

7 ^3 Z/ O1 K7 d
! h) r8 k+ U8 H0 n..........2 h& Z' T7 O' t0 k4 Z
' F) y  q) \: N% i3 A( H% T4 V
类似与环境版本的问题很多,大家都来谈一谈您的企业是如何来做的?
7 V; A! y# X* v
发表于 2016-9-8 13:56:13 | 显示全部楼层
现在使用容器技术可以解决这些问题。7 u1 c& B( u/ k3 R9 z( q

0 U9 I# z! H  w. |, Y3 ]之前较多使用运维配置管理工具 chef  ansible puppet等
回复 支持 反对

使用道具 举报

发表于 2016-10-25 15:54:47 | 显示全部楼层
现在能够想到的应该是用docker等容器技术来解决。" ?6 o) T; r# q. z; b2 U
回复 支持 反对

使用道具 举报

发表于 2017-7-3 18:42:25 | 显示全部楼层
好贴,问题比较多但是也太细了,场景很多。总结一下,主要还是分为2类:
0 t9 Z4 }6 H% B, p7 Y( s9 ^1.服务器级别的配置管理(源码、测试环境、甚至特征软件等)
5 g3 g# E: F5 M+ \, d/ O2.工作区级别的配置管理(个人研发环境或自测环境)9 S$ a: s  q& z1 X
我也想了解下大家现在是怎么做的,目前能查到的基本都是靠虚拟化、沙箱来进行容器化管理,但是这类管理模式对服务器资源要求很大,本地机房管理成本应该不小,上云管理就又会涉及效率、成本和易用性问题,看看大家都是怎么解答
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|小黑屋|手机版|无图版|SCMLife.com ( 京ICP备06056490号-1 )

GMT+8, 2017-10-22 02:25 , Processed in 0.061517 second(s), 6 queries , Gzip On, MemCache On.

Powered by SCMLife X3.4 Licensed

© 2001-2017 JoyShare.

快速回复 返回顶部 返回列表