What's the difference between VCS and SCM?

拥有回忆 提交于 2019-12-03 01:19:58

问题


I'm doing some research on revision control in practice, and there seems to be two names for the same thing in books and papers: Software Configuration Management (SCM), and Version Control Systems (VCS). The former seems to be popular with software engineers / Java programmers, and the latter with from sysadmins, but both appear, at layman's glance, to mean the same thing.

On the other hand, in the past I've interpreted SCM to mean something like puppet or cfengine. Can anyone set me straight on these two terms in practice? Preferably with concrete examples.


回答1:


Version Control Systems are just that, software that provides versioning functionality (Git, Subversion, TFS Version Control) all fall into this category.

Software Configuration Management is a broader term that encompasses all the processes needed to build, package, and deploy software -- this includes Version Control Systems. It does not refer to software per se.




回答2:


Caution, SCM can refer to different meanings about Versioning:

  • Software Configuration Management as explained in JimDaniel's answer
  • Source Control Management is same as Version Control and Source Control and VCS

Moreover, people may use SCM to refer to other naming:

  • Source Code Management as in Source Code Control System
  • Software Code Management but this is a deformation of Software Configuration Management
  • Source Configuration Management same meaning as Software Configuration Management but maybe more focused on source code than on the whole software (settings, command line arguments, host parameters...)

Let's define them:

  • Version Control Systems are the standalone software to manage the versions (Git...)
  • Source Control Management is the same as VCS
  • Software Configuration Management is all processes to manage all the changes of the software: the development (VCS), the delivery release (VCS), the bug tracking, the software settings, the host/network settings, the version/settings of the other software interacting with...

Therefore, just using the acronym SCM is confusing: some people may understand the same meaning as VCS, some others may understand the whole process where VCS is just an aspect.



来源:https://stackoverflow.com/questions/4127425/whats-the-difference-between-vcs-and-scm

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!