Git 教程

GIT 教程

Git是一个侧重于速度的分布式修订控制和源代码管理系统。Git最初是由Linus Torvalds设计和开发的,用于Linux内核开发。Git是根据GNU通用公共许可证版本2发行的免费软件。本教程介绍了在进行基于Web和基于非Web的应用程序开发时,如何在分布式环境中使用Git进行项目版本控制。

版本控制系统

版本控制系统(VCS)是一种软件,可以帮助软件开发人员一起工作并维护其完整的工作历史。以下列出的是VCS的功能-

  • 允许多个开发人员同时工作。
  • 不允许覆盖彼此的更改。
  • 维护每个版本的历史记录。

以下是VCS的类型-

  • 集中版本控制系统(CVCS)。
  • 分布式/分散版本控制系统(DVCS)。

在本章中,我们将仅专注于分布式版本控制系统,尤其是Git。Git属于分布式版本控制系统

分布式版本控制系统

集中版本控制系统(CVCS)使用中央服务器来存储所有文件,并支持团队协作。但是CVCS的主要缺点是它的单点故障,即中央服务器的故障。不幸的是,如果中央服务器宕机了一个小时,那么在那一小时内,没有人可以进行协作。即使在最坏的情况下,如果中央服务器的磁盘损坏并且未进行适当的备份,那么您将丢失项目的整个历史记录。在这里,分布式版本控制系统(DVCS)成为现实。DVCS客户端不仅签出目录的最新快照,而且还完全镜像存储库。如果服务器出现故障,则可以将任何客户端的存储库复制回服务器以进行恢复。每次签出都是存储库的完整备份。Git不依赖中央服务器,这就是为什么离线时可以执行许多操作的原因。脱机时,您可以提交更改,创建分支,查看日志以及执行其他操作。您仅需要网络连接即可发布更改并进行最新更改。

Git的优点

免费和开源

Git是根据GPL的开源许可发布的。它可以通过互联网免费获得。您可以使用Git来管理房地产项目,而无需花一分钱。由于它是开源的,因此您可以下载其源代码,也可以根据需要进行更改。

又快又小

由于大多数操作都是在本地执行的,因此在速度方面具有巨大优势。Git不依赖中央服务器。这就是为什么无需每次操作都与远程服务器进行交互的原因。Git的核心部分是用C编写的,它避免了与其他高级语言相关的运行时开销。尽管Git镜像了整个存储库,但客户端的数据量很小。这说明了Git在客户端压缩和存储数据的效率。

隐式备份

有多个副本时,丢失数据的机会非常少。任何客户端上存在的数据都会镜像存储库,因此可以在崩溃或磁盘损坏的情况下使用它。

安全

Git使用称为安全哈希函数(SHA1)的通用加密哈希函数来命名和标识其数据库中的对象。在结帐时,每个文件和提交都通过其校验和进行校验和并检索。这意味着,在不了解Git的情况下,不可能从Git数据库更改文件,日期和提交消息以及任何其他数据。

无需强大的硬件

对于CVCS,中央服务器必须足够强大以服务于整个团队的请求。对于较小的团队来说,这不是问题,但是随着团队规模的扩大,服务器的硬件限制可能会成为性能瓶颈。对于DVCS,除非开发人员需要推送或提取更改,否则它们不会与服务器交互。所有繁重的工作都发生在客户端,因此服务器硬件确实可以非常简单。

分支更容易

CVCS使用便宜的复制机制,如果我们创建一个新分支,它将所有代码复制到该新分支,因此既费时又效率不高。而且,CVCS中分支的删除和合并既复杂又费时。但是使用Git进行分支机构管理非常简单。创建,删除和合并分支仅需几秒钟。
git 教程
git 环境设置
git 生命周期

你可能感兴趣的:(git,github)