当使用git-flow模型使用git发布时,我将存储库切换为指向master,tag中的最新提交,然后从tag中进行构建。好的做法是将所有存储库子模块的更改 merge 到master中,并让它们指向master(即master中的最新提交),还是将所有子模块的提交保持不变就足够了吗?

最佳答案

您对master的提交将记录您使用的所有子模块的提交。

如果有人 checkout 您刚刚剪切(并标记)的发行版,他们将负责运行git submodule update以便 checkout 每个子模块上的正确提交。

子模块 checkout 始终是 headless 提交,即通过其SHA-1哈希值而非符号ref(分支名称)进行寻址。因此,它们指向哪个分支都没有关系。

重要的是什么提交记录在( super 项目的)master上。

因此,回答您的问题:在发布时,可以保持子模块的提交不变。

09-04 20:49
查看更多