在 GitFlow 中切割发布分支的实际命令

Actual commands for cutting release branches in GitFlow

git 新手,正在尝试学习 GitFlow。使用 GitFlow,您经常会从 develop 分支中切出一个发布分支,这样您就可以隔离新更改的子集并将它们部署到某个 staging/nonprod 环境中。但是我实际上找不到可靠的文档来说明切割这些发布分支的正确程序是什么(命令方面)。是吗:

git checkout develop
git pull
git checkout -b release/1.1.3
git add .
git commit -m "Cutting release branch for v1.1.3."
git push

或者是:

git checkout develop
git pull
git checkout -b release/1.1.3
git push origin release/1.1.3

还是别的原因? 为什么?!

首先要确保你正在开发分支并且它是最新的:

 git checkout develop
 git pull

如果你运行:

git checkout -b release/1.1.3
git push

您可能会收到错误消息:

fatal: The current branch release/1.1.3 has no upstream branch.
To push the current branch and set the remote as upstream, use

    git push --set-upstream origin release/1.1.3

因为你在本地创建了一个新分支,所以它没有关联的上游跟踪分支,直到你告诉它应该跟踪什么。所以你需要明确你想把它推到哪里,如:

git push origin release/1.1.3

我无法对上述答案发表评论,因为我没有 50 声望...但我只想补充一点 --set-upstream(或 -u)标志也应该被包含在内,这样您就不必在任何时候想要从本地推送到远程分支时重复指定所需的上游分支。如果你运行这一次:

git push -u origin release/1.1.3

然后以后如果你在分支 release/1.1.3 你就可以 运行

git push

和git会记住你设置了上游分支并推送到同一个地方。