【问题标题】:Must an SVN repo always have trunk and branches directories -- and for a working directory are they optional?SVN 存储库必须始终具有主干和分支目录——对于工作目录,它们是可选的吗?
【发布时间】:2013-03-28 01:15:48
【问题描述】:

我在使用 svn(使用 Tortoise)的项目中工作,以前从未有过“主干”目录,然后转而使用 git,现在我工作的两家公司都使用 svn... 并且出现了 trunk 这个词有时起来。

What do "branch", "tag" and "trunk" mean in Subversion repositories? 的答案看来,trunk 实际上就像 git 中的“主分支”一样?是否所有 SVN 存储库始终具有主干和分支目录,而对于工作目录,它们是可选的?比如,如果我们这样做

svn checkout some_svn_path/trunk .

那么我们的工作目录没有trunk 目录吗? (没有.,则trunk 目录将存在,但使用.trunk 目录将不存在)。但是,如果稍后有人建议使用“try-new-feature”分支,那么会发生什么?我在 O'Reilly SVN 的书中看到他们会有一个calc 项目,然后工作目录有一个trunk 子目录以及一个branches 子目录。

【问题讨论】:

标签: svn


【解决方案1】:

从@bahrep 的 URLs 你已经知道,什么 Subversion(与 Mercurial/Git 的主线分支相反)没有任何预定义布局,但可能有任何常规布局,这只是开发人员之间协议的结果。

  • 在纯线性开发(无分歧历史,无合并)的情况下,存储库可能具有平坦空间(存储库的根,仅此而已)
  • Trunk 不能命名为“trunk”,而是使用任何其他名称

你的svn co真的“签出存储库的一些子树一些本地文件夹” - 本地文件夹可以是任何,存储库子树也可以是任何。签出源只有一个含义 - 以后的操作不会发生在任何不在“签出根目录”下的存储库对象

但是如果稍后有人建议使用“try-new-feature”分支,那么会发生什么?

什么都没有。您必须将 WC 切换为新根(此分支的根)而不是当前的 create|checkout new WC for this branch

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-09-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-02-12
    • 2021-05-04
    • 1970-01-01
    • 2012-06-26
    相关资源
    最近更新 更多