课程咨询: 400-996-5531 / 投诉建议: 400-111-8989
认真做教育 专心促就业
随着互联网的不断发展,分布式编程开发被众多程序员所掌握,今天我们就通过案例分析来了解一下,在使用git编程的时候都需要注意哪些问题。
轻量和快速
Git很快。Git基本上所有的操作都在本地执行,这对于那些必须跟服务器通信的集中式系统是一个巨大的速度优势。
Git一开始是为了管理LinuxKernel的源代码设计的,这意味着他从一天诞生就拥有了处理大型仓库的高效优势。Git使用C语言编写,减轻了使用更高级别编程语言的Runtime带来的性能损耗。Git开始的两个重要的设计目标就是性能和速度。
分布式
Git棒的特性之一就是分布式。这意味着,你要clone整个仓库而不是仅仅checkout分支的新头部版本。
多个备份
在日常的使用场景中Git往往有多个备份。这意味着就算在使用一个中央存储式的工作流,每一个用户都在本地有一个服务器上的完整备份。这里的任意一个版本都可以在服务器端数据损坏或者丢失的时候推送回服务器以挽救损失。事实上,只要你的仓库不是只有一个copy,Git就不会存在单点问题。
任意工作流
因为Git拥有分布式特性和极好的分支系统,你可以在此基础上轻松实现大量的工作流模型。
Subversion(SVN)风格工作流
集中式存储的工作流非常常见,特别是对于那些从传统的集中式代码版本管理系统转过来使用Git的人。Git一样可以提供这种工作形式:每次Push必须要更新到远程仓库的新版本。所以说大家还是像以前一样使用集中式存储的工作流往同一个服务器上Push代码依然没问题。
维护者和负责人工作流
对于一些更为复杂的项目来讲,像Linux内核这样的开发工作流也是很有效的。在这个模型中,负责人(lieutenants)负责整个项目的一些特定的子系统,他们合并所有跟那个子系统关联的变动。另外一个维护者(dictator,字面理解:独裁者)只能从他管辖的负责人这里获取变更,并将这些变更推送到主要仓库。然后所有人都从这个仓库获取更新。
数据校验
Git的数据模型确保了项目内的每一个字节,每一个bit的一致性。提交的每一个文件都会使用校验和计算摘要,检出的时候也使用这个摘要值。没有任何可能会出现从仓库中获取的内容跟你存储的内容有任何差异。
在不改变ID(校验和)的情况下也不可能出现改变任何文件,日期,提交说明或者任何其他在Git仓库中的数据。这就意味着,如果你有一个commitID,你不但可以确定这个版本的代码跟他提交的时候是一模一样的,而且这个版本之前的历史也没有发生任何改变。
大多数中央存储的版本控制系统默认不提供这样的校验整合。
暂存区域
不像其他系统,Git有一个概念叫做“暂存区域”或者“index”。这是一个在提交执行之前的临时的区域可以用来格式化和审阅改动内容的。
一个Git优于其他系统的功能是我们可以快速的暂存一些改动的文件,在工作目录中只提交部分改动的文件,或者文件改动的部分内容,以及在提交的时候在命令行里列出改动的文件列表。
【免责声明】:本内容转载于网络,转载目的在于传递信息。文章内容为作者个人意见,本平台对文中陈述、观点保持中立,不对所包含内容的准确性、可靠性与完整性提供形式地保证。请读者仅作参考。