Git(读作/gɪt/.)是一个开源分布式版本控制系统,可以高效、快速地处理从非常小到非常大的项目的版本管理。 Git 是由 Linus 开发的一个开源版本控制软件,用于帮助管理 Linux 内核开发。
Git 的开发是作为 BitKe 的临时替代品而开始的。
特点
分布式和集中式最大的区别在于开发者可以提交到本地克隆(git clone)绿色版git管理工具,在本地机器上复制一个完整的Git仓库。
下图为经典的git开发流程。
Git 的特点:
从一般开发者的角度来看绿色版git管理工具Autodesk SketchBook Pro(数字绘画设计工具),git有以下几个特点:
1、从服务器 Git 存储库(包括代码和版本信息)克隆完成到单个机器。
2、在自己的机器上创建一个分支,根据不同的开发目的修改代码。
3、在单机上自己创建的分支上提交代码。
4、在一台机器上合并分支。
5、获取服务器上最新版本的代码,并与自己的分支合并。
6、生成补丁并发送给主开发者。
7、看主开发者的反馈,如果主开发者发现两个普通开发者之间有冲突(可以合作解决的冲突)unfold3d,会要求他们先解决冲突由其中一人提交。如果主开发者可以自己解决,或者没有冲突,则通过。
8、解决开发者之间冲突的一般方法。开发者可以使用 pull 命令来解决冲突。解决冲突后,向主开发者提交补丁。
从主开发者的角度来看(假设主开发者不开发代码),git具有以下功能:
1、查看邮件或以其他方式查看一般开发者的提交状态。
2、应用补丁解决冲突(可以自己解决,也可以请开发者解决后再重新提交。如果是开源项目花边装饰笔刷下载,需要确定哪些补丁有用哪些不是)。
3、将结果提交到公共服务器并通知所有开发者。
优点:
适合分布式开发,强调个人。
公共服务器压力和数据量不会太大。
快速灵活。
任何两个开发人员之间的冲突都可以轻松解决。
离线工作。
缺点:
数据很少(至少是中文)。
学习周期比较长。
不符合传统思维。
代码保密性差。一旦开发者克隆了整个库,所有代码和版本信息都可以完全公开。
发表评论