GitHub的用户界面相当不直观和缺乏深思熟虑,所以这里有一个问题和一个问题:什么是“head”存储库?什么是“base”存储库?我不知道哪个正在被复制。单词“base”和“head”意思相同。“链表”的“头部”类似于“树”的“底部”。(GitHub有分叉树和文件树。)“Head”和“base”是同义词,意味着数据结构的“起点”,因此这些标签是模糊的。 尽管图表中有箭头,但不清楚哪个仓库是被复制的,哪个是复制到的。他们真的应该加上“到”和“从”的标签来澄清这一点。“比较”一词并不意味着方向性。这真的是非常愚蠢的措辞。箭头可能意味着“将X复制到Y”,也可能意味着“将Y复制到X”。
术语“head”和“base”在 Git 中的使用与它们通常在 Git 中的用法相同。“Head”是您所在的分支;也就是说,具有您更改的分支。“Base”是基于这些变更的分支。这类似于“git rebase”和“git merge-base”术语的使用。例如,如果我正在比较我在我的“foo123”分支上进行的更改与主 Git 存储库之间的差异,则基础分支是 “git/git”的“master”分支,而 head 分支是“bk2204/git”的“foo123”分支。如果我打开一个拉取请求,我将建议将我的“foo123”分支上的变更合并到主 Git“master”分支中。