git-flow:如何从源头签出发布分支?

时间:2011-04-29 22:11:36

标签: git git-branch git-flow

使用git-flow从中央仓库中提取已发布的版本分支的优惠工作流程是什么?

例如:
迈克发布了一个发布分支,他通过“git flow release publish 1.0”发布了它 Jane也希望在该发布分支上工作,她如何从中央存储库中取出它以继续使用该特定分支上的git流程?

  • 通过git flow release start 1.0然后git pull
  • 在本地创建分支
  • 通过带有git checkout -b release/1.0 origin/release/1.0的git在本地创建一个跟踪分支,然后从那里继续(git flow在分支上工作吗?)

3 个答案:

答案 0 :(得分:9)

所需的只是设置本地跟踪分支,不需要特定于git-flow的命令。 Git-flow显然只关心分支的名称,如果它的前缀是“release /”字符串。

因此,设置git branch --track release/1.5 origin/release/1.5之类的本地跟踪分支就是它的全部内容。

答案 1 :(得分:9)

git flow release(和feature)有一个“track”命令来简化你要做的事情。要为已发布的分支设置本地跟踪分支,并切换到该分支,只需执行以下操作:

git flow release track 1.0

git flow feature track my-feature-branch

以下是the gitflow source for the release "track" command的代码摘录:

cmd_track() {
    parse_args "$@"
    require_version_arg

    # sanity checks
    require_clean_working_tree
    require_branch_absent "$BRANCH"
    git_do fetch -q "$ORIGIN"
    require_branch "$ORIGIN/$BRANCH"

    # create tracking branch
    git_do checkout -b "$BRANCH" "$ORIGIN/$BRANCH"

    echo
    echo "Summary of actions:"
    echo "- A new remote tracking branch '$BRANCH' was created"
    echo "- You are now on branch '$BRANCH'"
    echo
}

Helpful git flow command line arguments

答案 2 :(得分:1)

完成git flow release publish后,您可以执行以下操作:

git fetch -q “origin” “release1.0”
git branch –no-track “release1.0” FETCH_HEAD
git checkout -q “release1.0”

然后你可以开始拉:

git pull “origin” “release1.0”