我对编程还很陌生,但我觉得我已经掌握了它的窍门,并且我正在尽力学习。我一直读到 Git 对于编程项目来说绝对至关重要,但我似乎无法弄清楚它实际上是什么does。谷歌也不想告诉我。该网站称其为“分布式版本控制系统”。呃……嗯?
有人可以向新手解释一下这东西是什么以及为什么它如此重要吗?
该网站称其为“分布式版本控制系统”。
让我们从一个想法开始版本控制系统。正如它所说的那样——它是一种存储和管理某事物的各种版本的方法。这在编程中非常重要,因为项目在开发时会被更改很多很多次,并且访问比当前版本更多的版本通常会很有用。它也会被多人改变;必须有某种方法来结合每个人的变化。
最简单的版本控制就是时不时地备份整个项目,并在各个开发人员之间传递这些快照或补丁。显然,采用这种幼稚的方法最终会遇到困难;这就是专用版本控制系统的用武之地。
版本控制系统将以智能方式跟踪您的所有历史记录,并允许您浏览该历史记录,查看有关更改的所有内容:它们是什么、谁进行了更改以及原因。稍微复杂一些,他们通常会有一些分支(可能为多个开发人员创建不同的开发线)和合并(将这些分支重新组合在一起)的概念。大多数版本控制系统还将提供许多高级功能。仅举一个例子,git 有一个名为“bisect”的工具,它可以让您通过历史记录进行二分搜索,以查找何时引入特定错误。整洁的东西。
版本控制有两大类:集中式和分散式。在集中式系统中,有一个中央存储库。它包含项目的所有历史记录,任何想要与该历史记录交互的人都必须通过该中央存储库。另一方面,像 git 这样的分布式系统为每个人提供了历史记录。每个开发人员最终都会获得存储库的一个副本(在 git 中称为克隆),该副本是完全自给自足的。没有必要与公共中央存储库进行交互,除非作为一个实际问题,一种发布内容供其他人查看的方式。这使得多人同时处理同一个项目变得更加简单,可能无需访问互联网,并且还使每个人都可以在自己的存储库中使用版本控制系统的全部功能,而不是有限的公共资源中央存储库的功能。
要获得关于如何最终使用像 git 这样的系统的精彩定性阅读,请从想要记住历史的基础知识开始,尝试git 的寓言 http://tom.preston-werner.com/2009/05/19/the-git-parable.html.
有关该主题的更多一般信息,请尝试维基百科:修订控制 http://en.wikipedia.org/wiki/Version_control_system.
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)