簡體   English   中英

配置管理和版本控制有什么區別?

[英]What is the difference between configuration management and version control?

任何人都可以簡單地解釋一下配置管理和版本控制之間的區別是什么? 從我在各種網站上可以找到的描述來看,配置管理似乎只是將配置文件放在源控制存儲庫中的一個奇特的術語。 但其他人讓我相信有一個更復雜的解釋。

版本控制是必要的,但不足以進行配置管理。 版本控制發生在某個中央或分布式存儲庫中,但沒有說明部署或使用任何特定版本的位置。

配置管理擔心如何采用版本控制中的內容並將其一致地部署到適當的位置,主要是QA和生產,但是在足夠大的開發操作開發人員中也是如此。

例如,您可以將所有SQL查詢保留在版本控制中,包括表修改腳本,但這並不能控制何時將這些腳本部署到相應的數據庫服務器並與依賴於任何其他代碼的部署保持同步在該數據庫結構上。

配置管理包括但不限於版本控制。

配置管理是您在項目方面需要管理的一切。 這包括軟件,硬件,測試,文檔,發布管理等。 它標識每個最終用戶組件,並跟蹤從項目第1天到項目結束當天的每個建議和批准的更改。

版本控制專門應用於計算機文件。 這包括文檔,電子表格,電子郵件,源代碼等。

版本控制是保存文件並保留它們的不同版本,因此您可以看到隨時間的變化。

配置管理通常被稱為整個過程,用於跟蹤代碼在哪個服務器上的版本,服務器的設置方式(以及在許多地方執行此操作的安裝腳本)。 這是代碼進入源代碼控制之后發生的事情的過程以及如何部署到服務器/桌面等。

配置管理是一個矛盾的術語。

在軟件中,它往往是版本控制的超集,強調整個過程以可重復和可預測的方式產生結果。

在計算維護中,它與整個網絡和一組連接的計算機(包括服務器,客戶端,路由器......)的配置設置和硬件/固件/軟件版本的維護有關。

在硬件制造中,它甚至代表上述兩者的超集,包括獲得產品所需的硬件和軟件模塊,以及制造它們的過程的描述,甚至有時候生產線本身的整個模式和配置。 。

版本控制是可交付成果的控制,而配置管理則管理整個過程,從而產生可交付成果。 配置管理涉及變更管理,項目管理等,通常不受簡單版本控制的管理。

除了上面提到的所有內容之外,我還想推薦Bob Aiello的書“Configuration Management Best Practices” - http://www.amazon.com/dp/0321685865 它涵蓋了軟件配置管理的所有方面,包括版本控制。

粗略地說,版本控制意味着您可以查看任何特定版本的源代碼。 配置管理意味着您可以構建和部署並可能測試任何特定版本。

這可能會有所幫助。

版本和配置

版本:

  • 能夠維護對象的多個版本。

  • 通常在許多軟件工程和並行工程環境中找到。

  • 各種版本的合並和協調留給應用程序

  • 某些系統維護版本圖

組態:

  • 配置是軟件系統模塊的集合兼容版本(每個模塊的版本)

版本控制是SCM系統的功能之一。

來自subversion用戶指南: http//svnbook.red-bean.com/en/1.7/svn-book.html

“某些版本控制系統也是軟件配置管理(SCM)系統。這些系統專門用於管理源代碼樹,並具有許多特定於軟件開發的功能 - 例如本地理解編程語言,或提供用於構建軟件的工具然而,Subversion不是這些系統中的一個。它是一個可用於管理任何文件集合的通用系統。對於你來說,這些文件可能是源代碼 - 對於其他人來說,從雜貨店購物清單到數字視頻混合的任何東西超越。”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM