【问题标题】:What is the best Git model for a scenario where there are multiple hierarchies?对于有多个层次结构的场景,最好的 Git 模型是什么?
【发布时间】:2020-07-27 00:37:40
【问题描述】:

我是一名 QA,我必须维护属于一个组织的多个项目的多个模块的多个脚本。为了更容易 -

Organisation X has 3 Projects - A,B,C
Each Project has 3 Modules
Each Module has 10 functionalities, so 10 test scripts.

我的挑战是,我需要将所有这些测试脚本保存在一个带有我团队名称的 Git 项目下。因此我尝试了以下方法:

Created a Git Project with my team name
Created 3 repositories inside, for 3 projects
Created 3 different branches under each repo for the modules

现在要在一个分支下维护 10 个不同版本的测试脚本,最好的策略是什么?如果只是将所有 10 个脚本放在一起,如果我拉出其中一个模块并打算只更改其中一个脚本,我仍然需要检查所有脚本,这是我不想要的。

在为模块创建的分支中再次拥有 10 个分支是否是个好主意?或者为每个脚本使用标签可以避免在我拉取时签出所有脚本?请提出建议。

我们正在使用 BitBucket。

【问题讨论】:

  • 您不想检查所有脚本是否有特殊原因?
  • @danielorn - 这是因为分支中脚本的大小和数量。脚本的数量只会随着时间的推移而增加,大小也会很重要。鉴于时间和机器空间有限,我不希望用户下载如此庞大的内容。

标签: git testing bitbucket branching-and-merging branching-strategy


【解决方案1】:

你必须最接近嵌套 git 存储库的东西是 git submodules,但通常在你需要使用当前 git 存储库中的另一个项目时使用,这里似乎不是这种情况,它也会如果您仅限于单个仓库,则无法工作。

如果您仅限于一个存储库并且您的脚本不是很大,我不会担心将它们放在同一个存储库中的文件夹结构中,如下所示:

project A
 |- module A1
     |- functionA1.1
     |- functionA2.1
     |- functionA3.1
     |- ...
 |- module 2
     |- ...
 |- module 3
project B
 |- ...
project C

如果真的很重要,您可以使用git-sparse-checkout 控制在工作中签出的内容

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-03
    • 2016-11-09
    • 2013-09-17
    • 1970-01-01
    • 2011-11-28
    • 1970-01-01
    相关资源
    最近更新 更多