gpt4 book ai didi

git - 有没有一种传统的方法可以在 git 中支持多个版本?

转载 作者:太空狗 更新时间:2023-10-29 13:47:11 26 4
gpt4 key购买 nike

是否有一个 git 工作流程旨在维护来自多个 git 分支的软件(例如,release.1.1很久以前从 master 分支出来,release.1.2 最近从 master 分支出来)。功能分支Workflow、Gitflow Workflow 和 Forking 工作流都有很好的文档,但我没找到有关管理多个版本的信息。

管理多个版本需要一个将修补程序和功能应用到一个或多个版本的过程释放分支。主分支将用于维护 future 版本的所有更改,最接近 master 的版本可能会获得一些特性和修补程序,最远的版本获得的最少更新,离 master 最远的版本将是第一个达到生命周期结束的版本。

我觉得应该是这样的

master -------+----------+----------+----------+------+-----------+--------------------
\ \ \ / \ /
\ \ Hotfix-+ Feature-+
\ \ Hotfix Feature
\ release_1.2-------+------------------+---------------
\ Hotfix
release_1.1------------------+----------------------End-Of-Life

以下修改看起来更像 Git Flow,但有一个“release_1.1”分支。

                                          release_1.1---------+---------+---
| \ /
| Hotfix3
|
tag 1.0 tag 1.0.1 tag 1.1 tag 1.1.1 tag 1.2 tag 1.2.1
| | | | | |
master +-----------+-------------+--------+-------------+--------+------------------
| / / / / /
| / / / / /
\ Hotfix1 / Hotfix2 / Hotfix3
release | \ +-+-+ \ +-+-+ \
| \ / \ \ / \ \
develop +-+--------+---+-------+-+--------+---+-------+----------+------
\ / \ /
FeatureA-+ FeatureB-+

最佳答案

您不能将基于当前 master 的修补程序分支 merge 回旧版本中——这会将 master 中的所有更改也引入旧版本中.因此,您必须选择 master 和所有发布分支的共同祖先作为您的修补程序分支的基础,通常是您仍然希望支持的最旧修订与 master。从那以后,对于每个版本,(1) 将 hotfix 分支 merge 到 release 分支,然后 (2) 将下一个版本从 master fork 的点 merge 到 hotfix 分支并解决冲突.最后,将修补程序分支 merge 回 master

您可能想看看 http://nvie.com/posts/a-successful-git-branching-model/ .

关于git - 有没有一种传统的方法可以在 git 中支持多个版本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23349475/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com