首页 > 解决方案 > 团队成员克隆远程存储库时使用 git flow init

问题描述

假设我已经克隆了一个远程存储库(它再次属于我,比如来自github.com)并且我已经初始化了 git flow。您可能知道,git flow init将创建develop 分支并为功能、错误修复等创建前缀。到目前为止还不错。

如果我尝试git flow init在同一个存储库上再次执行,git 已经说过: Already initialized for gitflow. To force reinitialization, use: git flow init -f

这意味着 git 将初始化状态存储在 git 存储库中(在.git文件夹中)。现在,如果我推送 develop分支,它会反映在远程存储库中,这是预期的。

现在,如果另一个团队成员在他的本地机器上从这个远程存储库克隆,他必须再次初始化 using git flow init(如果他想使用git flow)。

我希望它应该给出输出:Already initialized for gitflow. To force reinitialization, use: git flow init -f在他的机器上,但事实并非如此。

您能否解释一下为什么每个团队成员git flow init在从远程存储库克隆后必须在其本地计算机上执行?

标签: gitgithubgit-flow

解决方案


简短的回答是您需要git flow在每个git clone.

的初始化git flow在两个方面进行:

  1. 创建正确的分支结构(例如缺少的开发分支)。
    你需要推送新的分支。

  2. .git/config使用提供给的所有信息更新本地文件git flow
    这是本地配置,无法推送。成功后git clone,用户需要运行git flow initgit 来更新本地配置。

您可能会发现此阅读很有用:如何共享 git 配置?


推荐阅读