Svn 一些SCM歧义

Svn 一些SCM歧义,svn,version-control,maven,Svn,Version Control,Maven,在阅读有关修订控制的文章时,我发现一些术语的定义似乎模糊不清,我想知道它们在现实世界中是如何实际使用/应用的。具体而言: “主线”与“基线” “分支”与“流” “签出”与“更新” “供应商”文件夹与工件回购(如Maven或Ivy) 我是一个上下文学习者,所以你能给出的任何具体例子都会帮助灯泡更好地打开 关于最后一个问题,我的意思是: 至少在svn中,具有以下VC项目结构是相当标准的: svnrepo/ someProject/ trunk/ branc

在阅读有关修订控制的文章时,我发现一些术语的定义似乎模糊不清,我想知道它们在现实世界中是如何实际使用/应用的。具体而言:

  • “主线”与“基线”
  • “分支”与“流”
  • “签出”与“更新”
  • “供应商”文件夹与工件回购(如Maven或Ivy)
我是一个上下文学习者,所以你能给出的任何具体例子都会帮助灯泡更好地打开

关于最后一个问题,我的意思是:

至少在
svn
中,具有以下VC项目结构是相当标准的:

svnrepo/
    someProject/
        trunk/
        branches/
        tags/
        vendor/
其中,
vendor/
是放置配置所依赖的外部/第三方依赖项的地方。或者,我见过开发人员使用诸如Maven或ApacheIvy之类的工具将工件(JAR等)拉入/发布到存储库,例如SFTP服务器那么,您何时将第三方依赖关系放在SCM的
供应商下
,何时将这些依赖关系放在Maven/Ivy回购中?

提前感谢您对这些项目的任何澄清

  • “主线”与“基线”:
    第一个术语是一种特殊的分支,它记录代码的演变,通常是在生产中看到的代码。请参阅。
    第二个术语是关于标签(设置在组件的所有文件上,即一组连贯的文件上)

  • “分支”与“流”:
    分支没有层次结构(您有一个分支列表,可以从任何分支合并到任何分支)。流有一个层次结构,除其他外,它允许定义流

  • “签出”与“更新”
    签出查询文件的特定版本并将其复制到磁盘上。
    更新将确保磁盘上的所有元素都是当前选择规则的最新元素


  • “供应商”文件夹与“工件回购”(如Maven或Ivy) 工件回购不提供合并、差异、分支等版本控制功能。
    供应商是VCS中的专用分支机构(我认为应避免使用,除非另有规定)
那么,什么时候将SCM中的第三方依赖项放在vendor/下,什么时候将这些依赖项放在Maven/Ivy repo中

您应该尝试将供应商LIB保留在VCS之外,仅对记录第三方库所需配置(即标签列表)的
pom.xml
(例如)进行版本设置