本人实习生,面试的时候被问到平时使用什么版本控制系统.我问了一句什么是版本控制系统,就被挂了.
之前在学校确实不知道有版本控制系统这个概念,现在想学习一下,不知道有学哪个好,貌似有好多,什么git,svn,cvs.一般都是用哪个? 有什么资料适合初学者的?
大家讲道理2017-05-02 09:23:59
git和svn都是比较主流的版本管控工具,作为实习生,建议对这两个都要有最基本的认识。
他们的作用都是管理代码,版本控制,有助于代码保护和团队成员的协同开发。
而它们的不同,简单来讲就是管理方式的不同。在实际使用中的体现就是,svn相对更容易的实现了单线的版本控制,方便的解决代码的冲突。而git相对更方便的实现灵活的分支管理。
目前两个都在网上有比较完备的资料以供学习,都是比较容易掌握的。
有可能的话,都应该学会,毕竟技术不会嫌多,特别是有用的。而且,你未来的公司用什么并不确定,掌握的更全面,会让找工作的路也更宽。
高洛峰2017-05-02 09:23:59
1.vcs(version control system)是开发中不可缺少的工具,有掌握的必要性,面试中说不知道cvs,是挺尴尬而且不应该的一件事儿。
2.vcs 有很多种实现,git/svn/tfs,每个cvs的实现思路都有所不同,使用体验也不同。比如,tfs/svn都是依赖中心服务器的vcs,git是分布式vcs,所以git工作起来要比tfs/svn要快一些。
3.你可能需要建立一种快速认识和学习一项技术的技能,当然这和开发经验有很大的联系,不过经验也是慢慢积累起来的不是一日之功。
4.如果自学能力比较强的话,建议直接学习git,git book,git pro都是很好的教材,不仅仅包括git知识,还有关于cvs思想的介绍。另外有很多其他的学习资源,比如qq群,实验楼,很多公开课,博客之类。
5.git是很流行的cvs,有很强大的社区力量,经验告诉我,学习开发技术,社区是重要的资源,交流使开发者进步。有社区的学习和没有社区的学习有本质的不同。另外,在学习git的过程中可以直接使用github.com的服务,将代码托管到github服务器。
阿神2017-05-02 09:23:59
学习git吧,现在不提分布式都不好意思说你是学计算机的 ,学习git资料的话,我在github上有篇整理,目前star 580+,fork 170+ ,个人感觉还是不错的 ,地址:https://github.com/xirong/my-git
巴扎黑2017-05-02 09:23:59
版本控制透过文档控制(documentation control)记录程序各个模组的改动,并为每次改动编上序号。这种方法是工程图(engineering drawings)维护(maintenance)的标准做法, 它伴随着工程图从图的诞生一直到图的定型。 一种简单的版本控制形式,例如,赋给图的初版一个版本等级“A”。当做了第一次改变后,版本等级改为“B”,以此类推等等。
http://baike.baidu.com/view/183136.htm
PHP中文网2017-05-02 09:23:59
用git吧.
我们以前用的svn,主干开发,线上版本打分支.这种模式,1周发布一次版本,或者2周发布一次,各种痛苦.
现在改用git,严格走git work flow,每天一版本,各种补丁,各种畅快.