学习Swift和iOS开发第13部分:关于版本控制

想象您正在处理一个个人应用程序项目。 您刚刚击倒了三只红牛,并且感觉(根据字面意思)生产力过高。
您逐行编写代码,开始看起来好像您正在构建的新功能已接近完成。

据您所知,由于缺乏愚蠢的测试,在3,498行附近某个地方创建了一个严重的错误,它将导致您的应用程序出现重大问题。

从那时起,您已经编写了5,000行代码! 当然,您会整夜试图找到该错误的来源。 至少你喝了那些红牛……😳

从不畏惧! 这是版本控制突袭并保存一天的地方。

现在让我们回到故事的开始:假设您正在开发一个个人应用程序项目,并为您的项目设置了版本控制。
您所做的每项重大更改都会推送到远程服务器。
您还要编写另一部分重要代码,并将其也推送到远程服务器。 这将一直持续到您多次推送代码为止。

突然,您在代码中发现一个严重的错误。 不必解析整个代码库,我们可以恢复到代码所处的先前状态。

真好 👌

关于吉特

如果您喜欢视频说明,我们专门为您准备:

在进行版本控制之前,Sam不得不以某种方式将其更新的代码文件发送给Pete。
然后,Pete将不得不识别并复制并粘贴Sam的更改到他的项目中并保存它。
然后,Pete必须将包括他的更改的更新的项目发送回Sam,以便他们俩都可以拥有当前项目:

这种情况仅发生在两个开发人员之间。 想象一下,随着更多的开发人员团队,此问题的复杂性如何增加!

版本控制的工作方式

如前所述,版本控制是一种出色的方式来备份您的代码库,并在需要时能够还原到以前的更改。
这也使与他人的合作更加轻松!

想象一下一个拥有三个开发人员的开发团队,他们分别是Jim,Sam和Harry。

他们都在开发应用程序并实现各种功能。

Jim首先编写一些代码,然后将其保存到他的项目版本中。
山姆也一样,哈利也一样。
现在,它们三个都具有相同应用程序的不同版本:

现在,Jim现在可以将其更改提交(推送)到远程服务器:

完成后,Sam可以访问远程服务器并提取Jim的更改。
版本控制会自动合并Jim对Sam项目的更改:

这两个项目现已合并。 现在,Sam可以将其独特的更改(包括Jim的更改)推回远程服务器,以便其他开发人员可以访问更新的项目:

初级开发人员Harry现在可以将项目下拉至本地计算机,进行更改并添加其功能,然后将其代码推送至远程服务器以将其合并并更新项目:

包起来

当单独工作或与团队一起工作时,版本控制显然非常有用。 它是高效的,有效的,并总体上改善了开发过程。

手动发送,合并和重新发送代码的日子已经一去不复返了。 Git是一个非常有用的学习工具。 在下一篇文章中,我们将学习Git的基础知识。