系列一版本管理軟體簡介

2021-09-06 14:20:23 字數 1718 閱讀 1825

原文:

系列一版本管理軟體簡介

版本管理軟體簡介

1、問:什麼是軟體版本管理

答: 軟體版本管理是指通過執行版本控制、變更控制的規程,以及使用合適的配置管理軟體,來保證所有配置項的完整性和可跟蹤性。版本管理是對工作成果的一種有效保護。

2、問:為什麼需要版本管理

答:如果沒有軟體版本管理,最大的麻煩是工作成果無法回溯。隨著工作的進展新的程式覆蓋了老的程式,當突然發現新程式有問題而老程式正確時怎麼辦?那只能重寫老的程式來覆蓋新的程式。

過一段時間又發現原來的老程式有問題,而解決方法在原來的新程式中……您是不是快要發瘋了。 為了避免成果被覆蓋,包括我自己在內的很多人早期採用手工管理版本的方式,例如當乙個新版本

產生時用當時的日期來命名資料夾,然後再複製一下以後的修改在複製的資料夾內進行,這樣上乙個版本就被儲存下來了,周而復始不同的版本不會被覆蓋。雖然這種方式可以從某種程度上解決版本

的回溯問題,但它存在的缺點是顯而易見的:

第一點:

如果保留結果過於頻繁,將會導致產生大量的有著重複內容的資料夾,龐大的物理空間,管理起來很麻煩;如果保留舊版本的時間間隔太長,可能產生某些有用的老程式無法回溯。拿我最近開發的乙個程式來說程式只有幾十兆,經過一年的開發各版本累計到1g。

第二點:

容易產生版本的混亂,如果是團隊開發軟體,這種簡單的方法更難解決問題的本質了。

3、人的問題

版本管理的方法是成熟的,而且相應的軟體工具也是成熟的,基本上不存在看不懂、不會用的問題。版本管理的執行效果如何,完全是事在人為。

妨礙版本管理的主要問題是人們嫌麻煩和僥倖心理作怪。 在沒出亂子的情況下,執行版本控制看起來有些麻煩。每次修改工作的時候總是要get latest version,

接著check out,修改完後又要check in,多做了三步。其實這三步加起來也就十幾秒鐘,而且不費腦子,根本沒有新增多少麻煩,僅僅是個人感覺不爽而以。

然而不執行版本控制的話,萬一發生工作成果被覆蓋或丟失等問題,麻煩就大了。

4、軟體版本管理規範

軟體研發和管理過程中會產生許許多多的工作成果,例如文件、程式和資料等,他們都應當妥善地保管起來,以便查閱和修改。如果把所有檔案一股腦的塞進計算機裡,那麼使用起來很麻煩。

凡是納入版本管理範疇的工作成果統稱為配置項主要有兩大類:

第一類:

屬於產品的組成部分,例如需求文件、設計文件、源**、測試用例等等;

第二類:

在管理過程中產生的文件,例如各種計畫、報告等。每個配置項的主要屬性有名稱、識別符號、檔案狀態、版本、作者、日期等。配置項及歷史紀錄反映了軟體的演化過程。

版本控制的目的是按照一定的規則儲存配置項的所有版本,避免發生版本丟失或混亂等現象。配置項的狀態有三種:「草稿」、「正式發布」和「正在修改」

配置項的版本號與配置項的狀態緊密相關:

(1) 處於「草稿」狀態的配置項的版本號格式為:0.y.z

(2) 處於「正式發布」狀態的配置項的版本號格式為:x.y。 一般只是y值遞增,當y值到達一定的範圍時x值才發生變化。

(3) 處於「正在修改」狀態的配置項的版本號格式為:x.y.z。 一般只增大z值,當配置項修改完畢,狀態重新變成「正式發布」時,將z值變為0,增加x.y值。 開篇

系列一 版本管理軟體簡介

系列二vs專案軟體配置工具介紹

系列三visualsvn server

系列四tortoisesvn客戶端軟體

系列五ankhsvn

HTTP協議入門(一) 版本

當我們在瀏覽器的位址列輸入url後,資訊會被傳送到web伺服器,伺服器得到響應,將資料傳輸回來,展示到web頁面上,這其中的傳輸方法就是http協議。只支援get請求方法,伺服器響應返回的資料格式為,html格式的字串 get index.html不支援請求頭,所以內容格式只能是純文字 無狀態性,請...

易協流程管理軟體發布2 2版本

本次版本公升級的功能有 1 會審原則 a 所有原則 所有人通過則通過 b 任一原則 任一處理人通過可通過 c 半數原則 半數人通過則通過 d 多數原則 多數人通過則通過 2 流程編譯 本次版本編譯資訊豐富,提供錯誤資訊 警告資訊 提示資訊。3 流程迴圈處理 4 流程繪製公升級 a 提供環節型別圖例 ...

git 回滾某一版本

今天git commit 後,在git push 後面沒有加上 遠端分支,直接git push了,導致 沒有push 到origin 庫,而是直接push到了gitlab 庫。在gerrit上檢視一直沒有看到提交的資訊,但git fetch origin,git pull rebase,一直能拉下來...