Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between configuration management and version control?

Can anyone explain in simple terms what the difference is between configuration management and version control? From the descriptions I've been able to find on various websites, it seems like configuration management is just a fancy term for putting your config files in a source control repository. But others lead me to believe there is a more involved explanation.

like image 929
friedo Avatar asked Oct 29 '09 19:10

friedo


People also ask

What is configuration version control?

"Configuration Management", or "Version Control", describes the technical and administrative control of the deliverable components. It applies particularly where components need to operate together to provide the overall solution. There will be thousands of components in the overall solution - each one must fit.

What are the main objectives of configuration management and version control?

The objective of Configuration Management is to define and control the components of an IT service and its infrastructure, and to maintain accurate configuration information. The Configuration Management process manages service assets to support other Service Management processes.

What are version control systems and software configuration management tools?

Version control, also known as source control, is the process of tracking and managing changes to files over time. VCS — version control systems — are software tools designed to help teams work in parallel. You can use version control for versioning code, binary files, and digital assets.

What are the three types of version control?

The types of VCS are: Local Version Control System. Centralized Version Control System. Distributed Version Control System.


2 Answers

Version control is necessary but not sufficient for configuration management. Version control happens in some central or distributed repository, but says nothing about where any particular version is deployed or used.

Configuration management worries about how to take what is in version control and deploy that consistently to the appropriate places, primarily QA and production, but in a large enough development operation developers as well.

For example, you may keep all of your SQL queries in version control, including your table modification scripts, but that doesn't control when those scripts are deployed to the appropriate database server and kept in sync with the deployment of any other code that relies on that database structure.

like image 181
Yishai Avatar answered Oct 23 '22 08:10

Yishai


Configuration management includes, but is not limited to, version control.

Configuration management is everything that you need to manage in terms of a project. This includes software, hardware, tests, documentation, release management, and more. It identifies every end-user component and tracks every proposed and approved change to it from Day 1 of the project to the day the project ends.

Version control is specifically applied to computer files. This includes documents, spreadsheets, emails, source code, and more.

like image 24
Thomas Owens Avatar answered Oct 23 '22 07:10

Thomas Owens