前言
在我們工作中,必然會遇到代碼的多個版本問題,也必然會遇到版本控制問題。如果所在的公司具有良好的項目管理體系或者軟件管理體系,那么其版本控制應該有嚴格的使用規范,如果沒有則作為一個上進好青年也應當熟練掌握版本控制的一些技巧。這里簡單的介紹一下在工作中,我們的版本控制如何使用。
版本控制是什么
版本控制是什么在這個文章就不再介紹了,你沒有概念,可以先在百度或者谷歌搜索相關概念。
這里給一個Wiki的鏈接方便大家了解:
為什么LabVIEW開發使用版本控制
LabVIEW軟件開發同樣存在大量的版本控制需求,無論是TestStand序列還是LabVIEW程序設計,
我們總會有階段性的去輸出一些版本。如果在沒有版本控制的情況下開發程序,我們很容易面臨如下問題:
1. 代碼如果想保存,需要不停的復制和備份,占用大量硬盤資源
2. 代碼如果想返回原先某一狀態比較困難
3. 代碼如果想要協同開發比較困難,最典型的就是協同開發導致大量沖突VI
選用哪種版本控制軟件
版本控制軟件很多,常用的有Git和SVN,而TortoiseSVN由於其圖形化的操作和簡單易用的特性,在LabVIEW開發中應用比較多一些,本文也將以TortoiseSVN為例講解軟件程序中的版本控制。
TortoiseSVN的開發文章參考
TortoiseSVN如何使用
TortoiseSVN的使用通常分為幾種,根據使用人數分為單人開發使用和多人開發使用,根據使用方式不同分為聯網使用和單機使用。
- 在版本控制比較弱的情況下或者客戶環境限制無法聯網,我們使用的是單人單機開發模式進行代碼的版本控制
- 在單人多態電腦開發的情況下,我們使用單人聯機模式進行開發
- 在多人情況下一般使用聯網模式,進行協同開發
單人單機模式開發
單人單機模式使用版本控制,可以讓我們單機的程序具有版本控制的功效,讓我們可以輕松的撤回以前的版本,具體使用流程如下
源碼倉庫建立
首先找一個比較隱秘的文件夾,作為我們的源碼倉庫,點擊右鍵彈出TortoiseSVN菜單,並且創建源碼倉庫(Create Repository here)
點擊Create Folder Structure 完成文件夾結構的創建,點擊OK完成

版本控制設定
源碼倉庫建立完成后,我們可以打開需要版本控制的文件夾,選擇SVN Checkout來將該文件夾版本控制起來
路徑處的URL填寫本地剛剛建立的源碼倉庫地址,Checkout directory設置為當前需要版本控制的文件夾

如果想要細化文件夾路徑,如將版本規范的放在trunk目錄下可以選擇配置

點擊OK,即可將當前文件夾填入版本控制區間

第一次提交版本為version 1

提交完成后,文件夾內的文件會顯示問號,代表沒有進行控制

在1處填寫工作日志和版本日志,在2處選擇需要提交哪些問題,點擊OK完成內容的提交

提交后,彈出信息界面,我們的版本升級為version 2

撤回操作
在提交完成后,我們的代碼/文檔已經全部備份,這時候我們對文件的任何改動都可以撤回,這里我們以文件不小心刪除為例(實際中我們通常會碰到文件誤修改或者刪除的情況)

文件刪除后內容丟失,這時我們可以選擇Revert操作,將丟失的文件從源碼倉庫中重新拷貝一份出來

勾選需要撤回的內容,點擊OK完成撤回操作

撤回后,文件又回恢復
實際中,我們通常是某些代碼文件修改后需要放棄修改使用本功能,誤刪除只是一種情況。更有甚者整個文件夾全部刪除的時候,我們也可以重新Checkout來獲取代碼。
TortoiseSVN給我們的代碼添加了一層保險,只要源碼倉庫存在,我們可以任意的處理我們當前的文件,而不怕丟失

實際上我們很少會記錄版本號,這里選擇Showlog,通過日志來查看我們的版本,選擇指定的版本