使用gitflow,哪个分支必须在本地,哪个必须在远程?
With gitflow, which branch must be on local and which one must be on remote?
我要切换到 gitflow 了!我很困惑是应该在远程创建所有分支还是应该在本地创建分支!
谢谢你的帮助。
一般来说,所有分支都存在于远程存储库中,因为它们 public 并且应该可供其他开发人员访问。此外,如果您使用 gitlab
或 github
.
等存储库管理框架,远程存储库就是合并发生的地方
当你开始实现一个新功能时,你通常会检查 develop
分支(因此它需要在本地存在),并从那里开始一个 feature
分支。完成功能实现后,您会希望将其合并到 develop
分支中。正如我上面提到的,这通常是在某种代码审查之后完成的,因此发生在远程存储库上,因此您必须将您的功能分支推送到那里。
这同样适用于您从 master
分支出来的修补程序分支,因此您最好在本地创建一个。
并且您必须在某个地方创建一个release
分支,可能是在本地,然后将其推送到远程。
长话短说:如您所见,所有分支最终都会出现在远程存储库中,并且可能还会出现在您的本地存储库中,尽管并非所有本地分支都必须始终保持最新状态(您可能想要拉取仅当您计划在它们之上创建修补程序时才更改为 master
。
当然,git
支持各种工作流程,这绝不是强制性的。最终取决于您,但根据我的经验,大多数情况下都会像我上面描述的那样结束。
我要切换到 gitflow 了!我很困惑是应该在远程创建所有分支还是应该在本地创建分支! 谢谢你的帮助。
一般来说,所有分支都存在于远程存储库中,因为它们 public 并且应该可供其他开发人员访问。此外,如果您使用 gitlab
或 github
.
当你开始实现一个新功能时,你通常会检查 develop
分支(因此它需要在本地存在),并从那里开始一个 feature
分支。完成功能实现后,您会希望将其合并到 develop
分支中。正如我上面提到的,这通常是在某种代码审查之后完成的,因此发生在远程存储库上,因此您必须将您的功能分支推送到那里。
这同样适用于您从 master
分支出来的修补程序分支,因此您最好在本地创建一个。
并且您必须在某个地方创建一个release
分支,可能是在本地,然后将其推送到远程。
长话短说:如您所见,所有分支最终都会出现在远程存储库中,并且可能还会出现在您的本地存储库中,尽管并非所有本地分支都必须始终保持最新状态(您可能想要拉取仅当您计划在它们之上创建修补程序时才更改为 master
。
当然,git
支持各种工作流程,这绝不是强制性的。最终取决于您,但根据我的经验,大多数情况下都会像我上面描述的那样结束。