gpt4 book ai didi

SVN文件夹结构

转载 作者:行者123 更新时间:2023-12-04 18:08:16 25 4
gpt4 key购买 nike

扩展这个问题:SVN projects folder structure

除了各种项目,我还有一个模块集合,其中包含所有项目使用的独立于项目的功能。

我如何构建文件夹,以便我可以为一个选定的项目和给定修订版的模块应用标签?

使用以下设置,我必须独立标记模块和 Project_1。这意味着我必须跟踪哪个版本的模块和项目属于哪个版本...

/模块

  • 中继
  • 标签
    • TAG_Project_1_release_0_1
  • 分支机构

/项目_1

  • 中继
  • 标签
    • TAG_release_0_1
  • 分支机构

使用设置 2 将导致标记模块和所有项目。

/主干

  • 模块
  • 项目_1
  • 项目_2

/标签

  • TAG_OF_TRUNK_Project_1_Release_01

/分支机构

  • 模块
  • 项目_1
  • 项目_2

我想要的只是一个包含 Project_1 的标签和不包含 Project_2 的模块,所以我想它必须以某种方式设置 2。

任何人都可以将我推向正确的方向以实现这一目标吗?

最佳答案

标记很便宜,并且几乎不占用存储库空间。我不担心在某些标记文件夹中有额外的项目,但您始终可以在标记后删除额外的项目。

话虽这么说,但实际上我更喜欢第一种方法,因为那里有更多的自由。自由是有代价的,但这里的代价很小。

编辑:标记和分支在 SVN 中本质上是相同的操作。当您分支某个文件夹时,您正在创建该文件夹的快照副本。这个“快照”部分很重要,因为原始文件夹中的任何更改都将保留在那里,不会传播到分支文件夹。标签和分支之间的唯一区别是 SVN 客户端会警告您更改路径包含“标签”的文件夹中的某些内容。

因此,就更改标签后的内容而言,这两个选项中的任何一个都是标签安全的。标记文件夹不会更改,只会更改您实际进行更改的文件夹。

EDIT2:您可以考虑第三种选择:

Modules
branches/tags/trunk
Project_1
branches/tags/trunk
Project_2
branches/tags/trunk
Solutions
Solution_1
branches/tags/trunk
svn:externals : Modules + Project_1
Solution_2
branches/tags/trunk
svn:externals : Modules + Project_1

您的工作文件夹是 Solutions/Solution_1/trunkSolutions/Solution_2/trunk。这些文件夹基本上是空的,但它们包含设置为适当的主干文件夹的 svn:externals 属性。当您想要分支或标记某些内容时,您可以在 Modules/Project_X 文件夹中创建分支,然后在 Solution_X 文件夹中创建一个分支,并将 svn:externals 属性更改为新的适当文件夹。标记与分支相同,但您将“修复”每个外部的修订。

关于SVN文件夹结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21161770/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com