这些词在Git中意味着什么:存储库,分支,分支,克隆,跟踪?

老实说,我不清楚这里的语义。 他们都是关于代码+历史单元的副本/变体,但过去我不确定我能说什么。 这个逻辑结构是在什么地方解释的?

存储库就是存储工作历史的地方。 它通常位于工作副本的.git子目录中 – 正在处理的最近状态的副本。

要分割一个项目(在特定的时间点从别人的仓库获得源代码,并将自己的变化应用于它),可以克隆远程仓库以创build它的副本,然后在本地仓库中完成自己的工作,提交更改。

在一个仓库中你有分支,这些分支在你自己的仓库中是有效的。 您的分支将在您的存储库中有一个祖先提交,并将与您的更改分开。 您稍后可以合并您的分支更改。 分支让您一次处理多个不同的function。

您还可以跟踪远程存储库中的各个分支。 这使您可以从其他人的分支中获取更改,并将其合并到您自己的分支中。 如果你和一个朋友一起工作一个新的function,这可能是有用的。

网上有很多很棒的git书籍。 看看ProGit和Git Magic开始,以及官方教程和社区书籍。

我要用RTFM来回答我自己的问题。

但是,阅读这个精美的手册。 正如作者所说:

“我从中得出的结论是,只有了解Git的工作方式,才能真正使用Git。 仅仅记住在什么时候应该运行哪些命令就可以在短期内运行,但是在卡住或者更糟糕的事情之前只是一个时间问题。

“不幸的是,Git的一半现有资源只是采用这种方法:它们会引导你通过哪些命令运行,并期望如果你只是模仿这些命令就应该做的很好。 另外一半是通过所有的概念,但从我所看到的,他们解释Git的方式,假设你已经了解Git如何工作。

这个GoogleTechTalk是一个很棒的Git入门介绍,学习语言的同时还可以学习幕后实际发生的事情。 它是由Git的一个很早的贡献者提供的,他在2007年作为一种引入Git的方式发表了这个演讲。 如果你看这个演讲,你不仅会知道每个单词是什么,比如版本库,分支,分支等等,但是你也会知道幕后发生的是什么时候,这些都是制作,合并等等。

地址很长,但信息量很大。 它还将Git与其他版本控制系统进行了对比,以便您了解为什么Git是以其创build方式创build的,以及它与其他控制系统相比的优势。 尽pipe谈话很老,但起床和跑步是非常有帮助的。 在我跳进手册之前,我会看这个。 我相信事情会变得更有意义。