【发布时间】:2017-04-08 05:58:21
【问题描述】:
我目前正在学习 udacity 的 GIT 和 GITHUB 课程。我真的很困惑的一件事是 remote 和 branch 之间有什么区别,因为根据我的理解,两者对我的意义相同。
【问题讨论】:
我目前正在学习 udacity 的 GIT 和 GITHUB 课程。我真的很困惑的一件事是 remote 和 branch 之间有什么区别,因为根据我的理解,两者对我的意义相同。
【问题讨论】:
这里准确地说,我们使用Git自己的documentation on What a Branch Is:
Git 中的分支只是指向其中一个提交的轻量级可移动指针。
Git 中的分支只是指向提交的指针。通常,此提交将依次与链或分支链结构中的其他提交连接。当我们通常想到分支时,我们会想到以某种方式在逻辑上排序的提交集合,但从技术上讲,分支只是指向提交的指针。
同样,来自Working with Remotes 上的文档:
远程存储库是托管在 Internet 或某处网络上的项目版本
远程,实际上只是远程存储库的缩写,是存储分支及其提交的中心位置。远程也可以有分支,但通常您不直接与这些远程分支交互。相反,有本地远程跟踪分支,顾名思义,它们跟踪实际远程上分支的真实状态。
【讨论】:
它们是完全不同的概念。
远程基本上是存储存储库副本的位置。例如,您可以在 GitHub 中拥有一个遥控器,在 BitBucket 中拥有另一个,在 Kelly 的 PC 中拥有另一个,等等。
存储库中的分支意味着您暂时进行了一些更改,但您还不想将其放入主分支,因为您还没有完成它(或出于其他原因)。它们可以是本地的,这样您的遥控器就不会看到它们,或者您可以将分支推送到遥控器。
【讨论】:
分支可以是本地的或远程的。本地分支由远程分支跟踪。
【讨论】:
Local branches are tracked by remote branches 不一定。