源控制与版本控制?

Rob*_*ean 60 version-control naming

哪个是存储源代码版本的系统的正确名称,如SVN或TFS?

我一直称它为源代码控制,但像维基百科这样的地方称它为版本控制?

为了使像这样的更复杂的网站有两个标签?

Von*_*onC 78

  • Revision Control是更通用的术语,用于源代码控制工具,也用于其他工具(Word,OpenOffice,...).它引用了一个版本.

  • 源代码控制提供分支和合并的修订控制,并非在所有修订工具中都可用(Word不是源代码管理,但提供修订控制功能)

  • 版本控制是比源代码管理更通用的术语,因为它管理任何内容的版本(源代码或二进制文件,或任何类型的文档)

注意:SCM代表源代码管理,但也代表软件代码管理,以反映相同的想法(不仅仅是"源"管理).
另外,SCM引入了文件组之间依赖关系的概念.
它还可以包括变更生命周期的概念(开始变更,关闭变更,......),这会导致变更请求系统.

  • SCM代表软件配置管理. (17认同)
  • 为什么你对赏金感到抱歉?你被投票10倍的事实应该表明你有最好的答案.自动接受系统工作正常. (2认同)

alt*_*ern 14

有三个同义词描述了几乎相同的东西:

  1. 修订控制.处理修订(文档/工件审查和文档/工件的后续版本)或数字(作为修订概念的抽象).
  2. 来源控制.处理文本(源)文件,而不是二进制文件.只要更容易进行比较并在文本文件之间获得差异,这种差异就起到了很大的作用.有相关的源控制的基本工具的整个范围:diff,diff3,patch等.这组工具可以延伸以形成源控制解决方案.这种解决方案的示例是RCS.
  3. 源代码管理.处理源代码上更复杂的操作:将其存储在repository可能创建单独的内容中branches.还假设分支可以merged.源代码管理的另一部分是tagging.源代码管理的一个问题是它有缩写SCM.此缩写用于描述更广泛的活动集 - 软件配置管理.存在很多混淆,因为源代码管理软件配置管理的一个子集,它还处理诸如构建管理,部署管理,持续集成,依赖关系管理,发布管理等活动.
  4. 版本控制.它用作源代码管理等术语的替代,以避免歧义.它结合了修订控制源代码控制的概念,使其能够描述几乎相同的概念.目前,术语修订控制,源代码控制都用版本控制代替,考虑到广泛的工具(CVS,SVN,Git,Mercurial,ClearCase,Perforce,VSS等),它们可以解决修订控制源控制同时进行.

图片更清楚地说明了所有这些概念之间的区别:

在此输入图像描述


Ron*_*age 13

我喜欢这样想:

修订控制就是他们所做的.

源代码控制就是我用它们的原因.

:-)


Fel*_*peC 5

  • 版本控制系统(VCS)是最常用的术语
  • 源代码管理(SCM)在git中使用,但它有点发明,可能与软件行业中已经使用的软件配置管理混淆,并且它不是一回事.


Ste*_*ont 5

使用的术语不是很精确。有一篇文章描述了五个相关维度。用于软件开发的数据管理工具往往不会同时一致地支持其中三个以上。如果您想支持所有五个,您必须描述开发过程:

  • 版本(语义:修改)
  • 视图(语义:等价、推导)
  • 层次结构(语义:由...组成)
  • 状态(语义:批准、可访问性)
  • 变体(语义:产品变体)

Peter van den Hamer 和 Kees Lepoeter (1996) 管理设计数据:CAD 框架的五个维度、配置管理和产品数据管理,IEEE 会议录,第 1 卷。84、第1期,1996年1月