团队成员克隆远程存储库时 git flow init 的使用
Usage of git flow init when team members clone the remote repository
假设我已经克隆了一个远程存储库(它又属于我,比如来自 github.com)并且我已经初始化了 git 流。如您所知,git flow init
将创建 develop
分支并为功能、错误修复等创建前缀。到目前为止还不错。
如果我尝试在同一个存储库上再次执行 git flow init
,git 已经说了:
Already initialized for gitflow.
To force reinitialization, use: git flow init -f
这意味着 git 将初始化状态存储在 git 存储库中(在 .git
文件夹中)。现在,如果我推送 develop
分支,它会反映在远程存储库中,这是预期的。
现在,如果另一个团队成员在他的本地计算机上从这个远程存储库克隆,他必须再次使用 git flow init
进行初始化(如果他想使用 git flow
)。
我预计它应该给出输出:Already initialized for gitflow.
To force reinitialization, use: git flow init -f
在他的机器上,但事实并非如此。
你能解释一下为什么每个团队成员在从远程存储库克隆后都必须在他的本地计算机上执行 git flow init
吗?
简短的回答是您需要在每个 git clone
之后初始化 git flow
。
git flow
的初始化操作在两个方面:
创建正确的分支结构(例如缺少的开发分支)。
您需要推送新分支。
使用提供给 git flow
的所有信息更新本地 .git/config
文件。
这是本地配置,无法推送。成功git clone
后,用户需要运行一个git flow init
允许git更新本地配置。
您可能会发现这篇文章很有用:我如何共享 git 配置?
假设我已经克隆了一个远程存储库(它又属于我,比如来自 github.com)并且我已经初始化了 git 流。如您所知,git flow init
将创建 develop
分支并为功能、错误修复等创建前缀。到目前为止还不错。
如果我尝试在同一个存储库上再次执行 git flow init
,git 已经说了:
Already initialized for gitflow.
To force reinitialization, use: git flow init -f
这意味着 git 将初始化状态存储在 git 存储库中(在 .git
文件夹中)。现在,如果我推送 develop
分支,它会反映在远程存储库中,这是预期的。
现在,如果另一个团队成员在他的本地计算机上从这个远程存储库克隆,他必须再次使用 git flow init
进行初始化(如果他想使用 git flow
)。
我预计它应该给出输出:Already initialized for gitflow.
To force reinitialization, use: git flow init -f
在他的机器上,但事实并非如此。
你能解释一下为什么每个团队成员在从远程存储库克隆后都必须在他的本地计算机上执行 git flow init
吗?
简短的回答是您需要在每个 git clone
之后初始化 git flow
。
git flow
的初始化操作在两个方面:
创建正确的分支结构(例如缺少的开发分支)。
您需要推送新分支。使用提供给
git flow
的所有信息更新本地.git/config
文件。
这是本地配置,无法推送。成功git clone
后,用户需要运行一个git flow init
允许git更新本地配置。
您可能会发现这篇文章很有用:我如何共享 git 配置?