使用gitflow,哪个分支必须在本地,哪个必须在远程?

With gitflow, which branch must be on local and which one must be on remote?

我要切换到 gitflow 了!我很困惑是应该在远程创建所有分支还是应该在本地创建分支! 谢谢你的帮助。

一般来说,所有分支都存在于远程存储库中,因为它们 public 并且应该可供其他开发人员访问。此外,如果您使用 gitlabgithub.

等存储库管理框架,远程存储库就是合并发生的地方

当你开始实现一个新功能时,你通常会检查 develop 分支(因此它需要在本地存在),并从那里开始一个 feature 分支。完成功能实现后,您会希望将其合并到 develop 分支中。正如我上面提到的,这通常是在某种代码审查之后完成的,因此发生在远程存储库上,因此您必须将您的功能分支推送到那里。

这同样适用于您从 master 分支出来的修补程序分支,因此您最好在本地创建一个。

并且您必须在某个地方创建一个release分支,可能是在本地,然后将其推送到远程。

长话短说:如您所见,所有分支最终都会出现在远程存储库中,并且可能还会出现在您的本地存储库中,尽管并非所有本地分支都必须始终保持最新状态(您可能想要拉取仅当您计划在它们之上创建修补程序时才更改为 master

当然,git支持各种工作流程,这绝不是强制性的。最终取决于您,但根据我的经验,大多数情况下都会像我上面描述的那样结束。