gpt4 book ai didi

GIT:理解分支命名约定的问题

转载 作者:太空狗 更新时间:2023-10-29 14:40:45 26 4
gpt4 key购买 nike

我无法理解“master”“origin master”“origin/master”、“remotes/origin/master”之间的区别!! GIT分支的命名有什么规则吗?我想 'origin master' 是存储库中的 master 分支,而 origin/master 是我本地存储库 master 分支的反射(reflect),那么 remotes/origin/master 是什么?!另外,有时我必须使用 origin/master 来引用存储库 master 分支(虽然我忘记了,但我觉得我以前遇到过这样的事情),这是为什么?

最佳答案

您应该阅读 git branching model正确理解这一点。但是,以下是一个快速而肮脏的解释。

git 中的分支是指向提交的 DAG 树中某些节点的指针。当您执行某些操作(例如提交)时,它们会移动。 master就是这样一个指针,默认情况下是在您初始化新存储库时创建的指针。这是你的“主要分支”(可以这么说)。

由于 git 是分布式版本控制系统,因此本地存储库和远程存储库(如 github 上的存储库)之间存在差异。这些被称为 remote s 并且当您第一次克隆时,您克隆的远程会自动创建并命名为 origin (即您的代码的来源)。

当你说 <remote>/<branch> ,它指的是指针的位置 <branch>不是在您的本地克隆上,而是在 <remote> 上.因此,如果在克隆后向本地分支提交 10 次,master (您本地的分支机构)将比 origin/master 提前 10 次提交.为了让 git 清楚我们正在谈论的是远程,约定 remotes/<remote_name>/<branch_name>用来。

我认为您在使用 git 之前需要阅读我链接到的那本书。对于来自 svn 这样的版本控制系统的人来说,这有点不直观。或其他人。 git 的分支模型比集中式系统的分支模型简单得多。

关于GIT:理解分支命名约定的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4420779/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com