Frage

Was ist der bevorzugte Workflow, um einen veröffentlichten Release-Zweig mithilfe von Git-Flow aus dem zentralen Repo zu ziehen?

zB:
Mike hat einen Release-Zweig erstellt und ihn über "git flow release publish 1.0" veröffentlicht Jane möchte auch an diesem Release-Zweig arbeiten. Wie zieht sie ihn aus dem zentralen Repo, um mit dem Git-Flow an diesem bestimmten Zweig weiter zu arbeiten?

  • Erstellen Sie den Zweig selbst lokal über git flow release start 1.0 und dann git pull?
  • Erstellen Sie einen Tracking-Zweig lokal über git mit git checkout -b release/1.0 origin/release/1.0 und fahren Sie von dort fort (funktioniert der Git-Fluss auf diese Weise auf dem Zweig?)
War es hilfreich?

Lösung

Sie müssen lediglich einen lokalen Tracking-Zweig einrichten. Es sind keine git-flow-spezifischen Befehle erforderlich.Git-flow kümmert sich anscheinend nur um den Namen des Zweigs und ob ihm die Zeichenfolge "release /" vorangestellt ist.

Das Einrichten eines lokalen Tracking-Zweigs wie git branch --track release/1.5 origin/release/1.5 ist also alles, was dazu gehört.

Andere Tipps

Git Flow Release (und Feature) haben einen "Track" -Befehl, um zu vereinfachen, was Sie versuchen zu tun.Gehen Sie folgendermaßen vor, um einen lokalen Verfolgungszweig für einen bereits veröffentlichten Zweig einzurichten und zu diesem zu wechseln:

git flow release track 1.0

oder

git flow feature track my-feature-branch

Hier ist der Code-Auszug aus der Gitflow-Quelle für den Release-Track"Befehl :

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
}

Hilfreiche Argumente für die Git-Flow-Befehlszeile

Sobald der git flow release publish fertig ist, können Sie Folgendes tun:

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

Und dann können Sie anfangen zu ziehen:

git pull “origin” “release1.0”

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top