Answers:
主题分支通常是您在本地创建的轻量级分支,其名称对您有意义。它们是您可能需要花费一定时间才能完成的错误修复或功能(也称为功能分支)的地方。
分支的另一种类型是“远程分支”或“远程跟踪分支”。这种类型的分支随着别人的工作而发展,并存储在您自己的存储库中。您可以定期更新此分支(使用git fetch
),以跟踪其他地方发生的情况。当您准备好赶上其他所有人的更改时,将git pull
既可以获取又可以合并。
我还看到了另一种分支,它实际上是同一存储库中文件的完全独立的树。例如,Git存储库本身包含名为man和html的头,它们包含的内容与master分支完全不同。我不知道这些分支通常被称为什么。
https://github.com/dchelimsky/rspec/wiki/Topic-Branches很好地解释了这一点:
“主题”分支是在处理单个“主题”(错误修复,新功能或试验性想法)时使用的单独分支。建议在主题分支上而不是直接在“主”上工作,因为:
{...访问链接...}
因此,出于所有这些原因,建议即使使用简单的贡献(例如单次提交的错误修正等),也可以使用主题分支来准备提交。
此示例还提供了示例。这实际上让我开始思考,这可能是大多数商店已经在做的事情。我曾经参与过的所有敏捷项目。我赞成“这不是一个技术术语”,因为我觉得这很麻烦。
似乎不是主题分支的最突出和最重要的分支类型将是主要的,可公开获得的存储库上的发布分支,对吗?
可能这对您来说是正确的,但这与您和您正在考虑的项目有关。它不是由Git决定的。
大多数版本控制系统(特别是集中式版本控制系统)都规定或强制执行特定的工作流程,包括使用分支的意义。Git(在某种程度上是大多数分布式VCS)认为,工作流,用于什么分支,何时提交,用于不同的仓库等,都是由用户和用户(策略)之间的协议选择的。因此,Git不会从技术上强制执行这些操作。
这是让Git难以学习的事情之一。奥利弗·斯蒂尔(Oliver Steele)从用户的角度解释了这一点,并撰写了有关“ 提交策略”的文章。