繁体   English   中英

什么是git主题分支?

[英]What is a git topic branch?

什么是git主题分支? 它在某种程度上与普通分支不同吗? 是否有任何分支不是主题分支?

主题分支通常是您在本地创建的轻量级分支,其名称对有意义。 它们是您可能为错误修复或功能(它们也称为功能分支)工作的地方,预计需要一些时间才能完成。

另一种类型的分支是“远程分支”或“远程跟踪分支”。 这种类型的分支遵循其他人的工作开发,并存储在您自己的存储库中。 您定期更新此分支(使用git fetch )来跟踪其他地方发生的情况。 当你准备好赶上其他人的变化时,你会使用git pull来获取和合并。

我还看到了另一种分支,它在同一个存储库中基本上是一个完全独立的文件树。 例如, Git存储库本身包含名为manhtml的头,其中包含与master分支完全不同的内容。 我不知道这些类型的分支通常被称为什么。

这不是技术术语; 它只是指为实现特定功能或修复错误而创建的分支。 基本上,“主题”是创建分支的原因。

https://github.com/dchelimsky/rspec/wiki/Topic-Branches解释得很好:

“主题”分支是您在处理单个“主题”(错误修复,新功能或实验性想法)时使用的单独分支。 建议使用主题分支而不是直接在“master”之上,因为:

{...访问链接...}

因此,出于所有这些原因,建议使用主题分支来准备提交,即使对于单一提交错误修正等简单贡献也是如此。

该示例还给出了示例。 这实际上让我思考,这可能是大多数商店已经做的。 我曾经去过的所有敏捷项目都是这样做的。 我赞成“这不是一个技术术语”,因为我觉得这可以击中头部。

看起来不是主题分支的最突出和最重要的分支类型是在主要的公共可用存储库上发布分支,对吧?

这可能适合你,但这是关于你和你正在考虑的项目; 它不是由Git决定的。

大多数版本控制系统(特别是集中式版本)规定或强制执行特定的工作流程,包括使用分支机构的意义。 Git(以及在某种程度上大多数分布式VCS)认为工作流,用于什么分支,何时提交,用于什么不同的repos等等都由用户和用户之间的协议(策略)选择。 所以Git并没有在技术上强制执行这些。

这是让Git难以学习的事情之一。 Oliver Steele从用户的角度解释了这一点,撰写了有关提交政策的文章

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM