如何看待源代码
源代码是公司的重要资产
对应软件公司来说,源代码相当于固定资产>人才
所以源代码管理对于公司来说是最重要的事物之一
一、管理源代码的工具
SVN:集中式的源代码管理工具,通常必须连到公司的服务器上才能正常工作
(提交代码、查看代码的历史记录、查看代码分支)
在公司中开发项目时,每天至少提交一次代码
第二天上班时,写代码之前,先获取最新源代码
如果出差到外地,则无法直接从公司内部的SVN服务器上获取代码、提交等
(此时,VPN可能是一个方案)
总之必须连到SVN服务器上才能干活
GIT:分布式的源代码管理工具,没有中心服务器的概念。
每个开发人员都可以获得完整的代码库。即使不连网,也能进行几乎所有的操作。
使用GIt时,因为代码库在本地,所有可以很快地提交,不会受网速影响。
提交的频率就可大大提高----------代码的历史记录更加详细(当需要查看或恢复到某一个时间点时,会更加准确灵活)
团队合作开发
源代码管理工具=>都能解决团队合作开发的问题。
GIT/SVN 都是网络程序,都是多用户的系统
版本管理
在开发过程中 ,会同时并存同一个产品的多个“版本”
(下一代产品)开发版(分支)
新特性试验版(分支)
Bug修复版(分支)
正式版 (分支)
不同的版本有自己的历史记录、有自己的研发团队(多人合作)
开源项目
使用Git可以管理或参与开源项目。Git本身就是为开源项目设计的。
互联网上很多源代码管理库(云计算和源代码管理的结合)
趋势:源代码管理将成为一种公共服务
软件开发能力
通过CMMI级别可以判断一个公司的软件开发能力。
CMMI能力成熟度模型,一共定义了五个级别
级别越高,表明软件开发能力越强,越成熟。
5级很难达到
3级以上意味着公司的管理非常规范
质量标准 ISO 2000 国际标准 规定了软件质量形成和保证体系
无论是CMMI还是ISO对于源代码管理都由明确要求-----软件公司必须使用专业的工具管理源代码资产。
二、GIT命令
1.git init 初始化一个git仓库,会在当前文件夹中生成一个.git隐藏文件夹
在这个.git 隐藏文件夹中,保存是版本库的所有数据。
2.git add 文件名/. 将已修改的文件放入暂存区
3.git commit -m 消息 将暂存区的文件提交到代码库
4.git log 查看提交记录 , ------ oneline 查看简化的记录(显示在一行中)
5.git status 查看工作区(当前文件夹)的状态
(哪些文件被修改/哪些文件被删除/哪些文件没有进版本库)
6.git reset --hard 提交ID的前几个字母
可以跳转到某一个历史记录
所有的文件都很恢复到那时的状态
配置用户邮箱
7.git reflog 查看所有commit和reset的记录
提交过程
工作区--> 暂存区-->分支(某个)->push-->远程Git库
远程Git库不是必须的!
暂存区存在的目的是可以挑选一部分文件提交,而不是将整个工作区全部提交