【问题标题】:What is the right process in using Git Flow?使用 Git Flow 的正确流程是什么?
【发布时间】:2020-07-09 14:26:41
【问题描述】:

我正在使用 Git Flow,“一个成功的 Git 分支模型”:
https://nvie.com/posts/a-successful-git-branching-model/

但我不完全理解,所以我请求你的帮助。

在我们的项目中,我们使用的是 gitlab,项目中有 2 个分支,分别是 master 和 develop。

我被告知要从开发分支分支出来,所以这就是我所做的:

  1. 首先是我克隆了远程仓库,默认分支是master
  2. 第二次我使用命令从开发分支分支 - git checkout -b develop origin/develop
  3. 现在在我的本地,我有两个分支 master 和 development
  4. 我在创建功能分支的时候有个问题,是不是只在本地? 比如使用命令git branch -b feature_branch,这个过程正确吗?
  5. 现在,如果上述过程是正确的,并且我在功能分支上进行了更改,是否应该将其合并到开发分支中?对吗?
  6. 现在如果我想推送本地更改,是否应该将其推送到远程开发分支?还是在 master 分支上?
  7. 如果我从我的团队中拉取更改,我应该从远程主分支拉取它吗?还是在远程开发分支中?

谁能解释一下,如果你能给出正确的命令,我也将不胜感激,谢谢。或一步一步的过程。

【问题讨论】:

  • 使用 GitFlow 的唯一正确方法是不要。

标签: git version-control git-branch branching-and-merging git-flow


【解决方案1】:

这取决于您团队的工作流程,但执行以下操作通常是安全的:

  1. 克隆
  2. git switch develop
  3. git switch -c feature_branch
  4. 提交内容
  5. git push -u origin feature_branch
  6. 在 Gitlab 上向 develop 创建拉取请求
  7. 在开始新功能之前拉develop

【讨论】:

  • 基本上在开始一个新功能时,我必须先删除我的feature_branch,然后返回开发分支然后拉取,然后再创建或开始一个新功能?对吗?
  • 是的,但我只会在合并拉取请求后删除功能分支。并为每个功能分支使用不同的名称,即使您删除了之前的分支,以避免混淆和可能与远程分支发生冲突。
  • 在这种情况下,我认为不必总是拉/变基到最新的develop(尽管这是最好的做法)。原因是,通过使用这个feature-branch-<topic>(当你在处理一个特性时分支出来),它允许你或你的其他团队并行工作。如果碰巧发生冲突,它只会在您创建拉取请求时显示出来(第 6 步)。
猜你喜欢
  • 2022-09-24
  • 2022-12-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-13
  • 2011-01-20
相关资源
最近更新 更多