📜  Git 功能

📅  最后修改于: 2021-10-24 12:51:27             🧑  作者: Mango

Git 是一个免费的开源分布式版本控制系统,旨在快速高效地处理从小到大的所有项目。
Git 依赖于软件分布式开发的基础,其中多个开发人员可以访问特定应用程序的源代码,并可以修改其他开发人员可能看到的更改。它允许用户拥有项目的“版本”,显示随着时间的推移对代码所做的更改,并允许用户在必要时回溯并撤消这些更改。

Git的特点——

Git 是当今最流行的版本控制系统,因为它是一个开源软件,易于处理和执行各种项目。
Git 允许一组人一起工作,所有人都使用相同的文件。它还可以帮助团队应对多人编辑同一文件时容易发生的混乱。 Git 为每个开发人员提供了整个开发历史的本地副本,并且更改从一个这样的存储库复制到另一个。以下是 Git 的一些基本和最重要的特性:分布式系统:
分布式系统是那些允许用户在世界各地执行项目工作的系统。分布式系统拥有一个中央存储库,许多远程协作者可以使用版本控制系统访问该存储库。 Git 是当今最流行的版本控制系统之一。如果中央服务器出现系统故障,拥有中央服务器会导致数据丢失或数据断开连接的问题。为了解决这种情况,Git 将整个存储库镜像到用户正在拉取的版本的每个快照上。在这种情况下,如果中央服务器崩溃,那么可以从下载了项目最新快照的用户那里取回存储库的副本。

Git 拥有分布式系统,允许用户同时在同一个项目上工作,而不会干扰其他人的工作。当特定用户完成他们的部分代码时,他们会将更改推送到存储库,并且这些更改会在每个其他远程用户的本地副本中更新,这些远程用户会提取项目的最新副本。

分布式版本控制系统

兼容性:
Git 与当今使用的所有操作系统兼容。 Git 仓库还可以访问其他版本控制系统如 SVN、CVK 等的仓库,Git 可以直接访问这些 SVN 创建的远程仓库。因此,一开始没有使用 Git 的用户也可以切换到 Git,而无需经历将他们的文件从其他 VCS 的存储库复制到 Git-VCS 的过程。 Git 还可以访问其他 VCS 的中央存储库。因此,您可以在 Git-SVN 上执行工作并使用相同的中央存储库。 Git 有一个 CVS 服务器模拟,它允许使用现有的 CVS 客户端和 IDE 插件来访问 Git 存储库。

非线性发展:
Git 允许来自世界各地的用户远程对项目进行操作。用户可以拿起项目的任何部分并执行所需的操作,然后进一步更新项目。这可以通过 Git 的非线性开发行为来完成。 Git 支持快速分支和合并,并包括用于可视化和导航非线性开发历史的特定工具。 Git 中的一个主要假设是,更改的合并频率高于写入频率。 Git 以树的形式记录项目的当前状态。可以随时将新分支添加到树中,并在完成后进一步与最终项目合并。

分枝:
Git 允许其用户在与主项目文件并行运行的行上工作。这些线称为分支。 Git 中的分支提供了在不影响原始版本的情况下在项目中进行更改的功能。版本的主分支将始终包含生产质量代码。任何新功能都可以在分支上进行测试和处理,并且可以与主分支合并。
借助一些 Git 命令可以非常轻松地完成分支和合并。根据用户的要求,一个项目的单个版本可能包含 n 个分支。
在 Git 中分支

轻的:
克隆完成后,Git 将所有数据从中央存储库存储到本地存储库。可能有数百个用户在同一个项目上工作,因此中央存储库中的数据可能非常庞大。有人可能会担心将这么多数据克隆到本地机器可能会导致系统故障,但 Git 已经解决了这样的问题。 Git 遵循无损压缩标准,压缩数据并将其存储在占用非常小的空间的本地存储库中。每当需要这些数据时,它都遵循反向技术并节省大量内存空间。

速度:
由于 Git 通过克隆的方式将与项目相关的所有数据存储在本地存储库中,因此从本地存储库中获取数据而不是从远程存储库中获取数据非常高效。与其他版本控制系统相比,Git 非常快速且可扩展,从而可以有效地处理大型项目。
从本地存储库获取电源的速度比远程服务器可能的速度快 100 倍。
根据 Mozilla 进行的一项测试,Git 的速度提高了一个数量级,比其他 VCS 工具快了大约 10 倍。这是因为 Git 实际上是用 C 语言编写的,这与其他语言不同,非常接近机器语言,因此处理速度非常快。

开源:
Git 是一个免费的开源分布式版本控制系统,旨在快速高效地处理从小到大的所有项目。之所以称为开源,是因为它提供了根据用户需要修改其源代码的灵活性。不像其他版本控制系统提供付费功能,如存储库空间、代码隐私、准确性和速度等。 Git 是所有开源软件,它免费提供这些功能,甚至比其他软件更好。
作为开源 Git,允许多人同时在同一个项目上工作,并非常轻松高效地相互协作。因此,Git 被认为是当今可用的最好的版本控制系统。

可靠的:
提供一个每次用户执行Pull操作时都会被克隆的中央存储库,中央存储库的数据始终备份在每个协作者的本地存储库中。因此,在中央服务器崩溃的情况下,数据永远不会丢失,因为开发人员的任何本地机器都可以轻松取回数据。一旦中央服务器全部修复完毕,多个合作者中的任何一个都可以重新获得数据。任何开发人员都无法使用这些数据的可能性非常低,因为最后参与该项目的开发人员肯定会在其本地机器上拥有该项目的最新版本。客户端的情况也是如此。如果开发人员由于某些技术故障或任何不可预见的原因丢失了数据,他们可以轻松地从中央存储库中提取数据并在其本地机器上获取最新版本的数据。因此,将数据推送到中央存储库使 Git 更可靠地工作。

安全的:
Git 会记录每个协作者在开发人员的本地副本上所做的所有提交。每次执行推送操作时,都会维护一个日志文件并将其推送到中央存储库。因此,如果出现问题,则开发人员可以轻松跟踪和处理。
Git 使用 SHA1 将所有记录以对象的形式存储在 Hash 中。每个对象通过使用这些哈希键相互协作。 SHA1 是一种加密算法,可将提交对象转换为 14 位十六进制代码。它有助于存储每个开发人员完成的所有提交的记录。因此,很容易诊断出哪些提交导致了工作失败。

经济:
Git 是在通用公共许可证 (GPL) 下发布的,因此可以免费使用。 Git 在本地机器上创建了中央存储库的克隆,因此,在将其推送到中央存储库之前,所有操作都在开发人员的本地机器上执行。只有在本地机器上的版本运行良好并准备好在中央服务器上推送后,才会进行推送。没有对中央服务器上的文件进行试验。这有助于在昂贵的服务器上节省大量资金。所有繁重的工作都在客户端完成,因此,服务器端不需要重型机器。

这些特性使 Git 成为有史以来最可靠和最常用的版本控制系统。 Git 的中央存储库称为 GitHub。 GitHub 允许使用 Git 执行所有推送和拉取操作。

GitHub 的一些显着特点是:-

  • 可以看到提交历史
  • 图表:脉搏、贡献者、提交、代码频率、它的成员。
  • 带有代码审查和评论的拉取请求
  • 问题跟踪
  • 电子邮件通知