■下載 NetBeans 6.1
本系統文章使用 NetBeans 6.0(.1) 作為開發工具。NetBeans 6.1 的英文版和中文版都已經順利發布,因此本文也同樣適用於 NetBeans 6.1 中文開發環境。
NetBeans 6.1 中文版下載頁面如下 (2008-06-04):
http://dlc.sun.com.edgesuite.net/netbeans/6.1/final
■版本管理系統的種類
在 Wikipedia 中打開 List of revision control software 項,從“舊有系統”到“當前系統”,再到“積極開發中的系統”,列舉出來 的系統共有 62 個之多(至撰寫本文時)。在這其中,版本管理系統可以分為 Distributed model(分布式模式)和 Client-server model(客戶 機服務器模型,即集中型)兩種。
Mercurial 屬於分布式模式。所謂分布式模型是指:采用 P2P 形態,將資源庫的副本置於每個參與者的身邊,通過 P2P 交換補丁來實現各 台機器的資源庫同步操作。由於這種形態自由度很高,要求利用者必須有意識地更新,也有人提意見說門檻太高。
Subversion 和 CVS 屬於集中型中。所謂集中型是指:采用服務器與客戶機整合形態,將所有歷史信息保存在服務器方,然後提供給多人共 享。而在客戶機方面,編輯方版本可以復制,登記版本和比較等所有的操作都可以通過網絡來執行,可以說是一種對互聯網信賴性很高的形態 。
本地歷史記錄,顧名思義就是指將歷史信息保存在本地。本地歷史記錄不需要任何設定,使用非常簡單,但是不適合與其他人共享歷史信息 的場合。
■用例 - Mercurial
准備 Mercurial
NetBeans IDE 6.0 / 6.1 並未隨帶 Mercurial,如果所使用的 OS 環境沒有提供 Mercurial,則需要另外安裝。請參考這個網址: http://www.selenic.com/mercurial/wiki/。
NetBeans IDE 6.1 附帶包含了 Mercurial 插件,但 NetBeans IDE 6.0 並沒有包含該插件。因此在使用 NetBeans IDE 6.0 時,需要通過 插件管理器來安裝 Mercurial 插件。
Mercurial 插件的安裝方法很簡單,依次選擇“工具”>“插件”,在彈出的“插件”窗口中選擇“可用插件”選項卡,再選中 “Mercurial 安裝”復選框,單擊“安裝”按鈕,然後再按照提示操作就可以了。
單人開發(Mercurial 腳本 1)
創建資源庫
您可以根據自己的喜愛創建特定的 NetBeans 項目,然後創建並提交資源庫。在“項目”窗口中選擇目標項目, 然後從菜單欄中依次選擇 “版本控制”>“Mercurial”>“初始化項目”。
在“項目”窗口中選擇目標項目,然後從菜單欄中依次選擇“版本控制”>“Mercurial”>“初始化項目”。
圖 1:初始化菜單
圖 2:初始化日志
在“項目”窗口中選擇目標項目,然後從菜單中依次選擇“版本控制”>“提交”。
圖 3:Mercurial 提交窗口
在彈出的“提交”窗口中輸入提交信息,然後單擊“提交”按鈕。
圖 4:Mercurial 提交日志
將更改內容保存到資源庫中
接下來繼續進行開發工作,當項目進展到一定程度後,確定更改內容並將其保存到資源庫中。
在“項目”窗口中選擇目標項目,然後從菜單中依次選擇“版本控制”>“比較”。
圖 5:Mercurial 比較
確認更改內容沒有問題後,從菜單中依次選擇“版本控制”>“提交”。
在彈出的“提交”窗口中輸入提交信息,單擊“提交”按鈕。
圖 6:Mercurial 提交窗口
圖 7:Mercurial 提交日志窗口
查看更改歷史
保持目標文件為打開狀態,然後從菜單欄中依次選擇“版本控制”>“顯示”>“顯示標注”。
圖 8:包含 Mercurial 標注的畫面
代碼各行左側將顯示文件版本編號。
從菜單欄中依次選擇“版本控制”>“顯示歷史記錄”,輸入起始時間,單擊“搜索”按鈕,然後再單擊“比較”按鈕。
圖 9:包含 Mercurial 搜索結果的畫面
展開相應的文件更改節點,選擇目標文件。
圖 10:Mercurial 歷史記錄中的比較信息
多人開發(Mercurial 腳本 2)
創建資源庫
首先,復制現有共享資源庫。
從菜單欄中選擇“版本控制”>“Mercurial”>“復制其他”。
圖 11:復制外部 Mercurial 資源庫
指定合適的 Mercurial 資源庫、Mercurial 路徑、地址目錄。此處假設為 NetBeans 項目,選中“復制後掃描 NetBeans 項目”,然後單 擊“完成”按鈕。
圖 12:Mercurial 復制日志
將更改內容保存在資源庫中
繼續開發項目,進展到一定程度時,確認更改內容並將其保存在資源庫中。
在“項目”窗口中選擇目標項目,然後從菜單欄中依次選擇“版本控制”>“比較”。
圖 13:Mercurial 比較畫面
確認更改內容沒有問題後,在“項目”窗口中選擇目標項目,然後從菜單欄中依次選擇“版本控制”>“提交”。
在彈出的“提交”窗口中輸入提交信息,然後單擊“提交”按鈕。
圖 14:Mercurial 提交窗口
圖 15:Mercurial 提交日志
添入其他開發人員的更改內容
如果其他開發人員對項目進行了更改,應盡快加入這些內容,否則時間一長會積存越來越多的更改沖突,這會造成合並工作難以完成。
從菜單欄中依次選擇“版本控制”>“顯示”>“顯示傳入”,然後單擊“搜索”按鈕,確認其他人所做的更改(此步驟可以省略)。
圖 16:Mercurial 傳入更改
繼續操作,從菜單中依次選擇“版本控制”>“獲取”,確認其他人所做的更改。如果必要,可以解決相關沖突。
與其他開發人員共享自己更改的內容
在推入共享資源庫時,需要添加其他開發人員的更改內容,並保持自己的資源庫為最新狀態。
接下來,從菜單欄中依次選擇“版本控制”>“顯示”>“顯示傳出”,來簡單確認一下自己想要共享的內容(此步驟可以省略)。
圖 17:Mercurial 傳出更改
確認完畢,將其推入共享資源庫。
從菜單欄中依次選擇“版本控制”>“共享”>“推入至缺省位置 ”。
圖 18:Mercurial 推入日志
■用例 - Subversion
准備 Subversion
NetBeans IDE 6.0 / 6.1 並未隨帶 Subversion,如果所使用的 OS 環境沒有提供 Subversion,則需要另外安裝。請參考這個網址: http://subversion.tigris.org/ 。
NetBeans IDE 6.0 / 6.1 提供了 Subversion 插件。
單人開發(Subversion 腳本 1)
創建資源庫
在 NetBeans 外部創建資源庫。
$ svnadmin create /path/to/repository
第一次將項目內容保存在資源庫中
使用 NetBeans 創建項目,初步成形後將其導入資源庫。
在“項目”窗口中選擇目標項目,然後從菜單欄中依次選擇“版本控制”>“Subversion”>“導入資源庫中”。
圖 19:Subversion 導入畫面
輸入必要的參數後,單擊“導入”按鈕。
將更改內容保存到資源庫中
繼續開發項目,當進展到一定程度時,確認更改內容並將其保存到資源庫中。
在“項目”窗口中選擇目標項目,然後從菜單欄中依次選擇“版本控制”>“比較”。
圖 20:Subversion 比較畫面
確認更改內容沒有問題後,在“項目”窗口中選擇目標項目,然後從菜單欄中依次選擇“版本控制”>“提交”。
在彈出的“提交”窗口中輸入提交信息,然後單擊“提交”按鈕。
圖 21:Subversion 提交畫面
圖 22:Subversion 提交輸出窗口
查看更改歷史
保持目標文件為打開的狀態,然後從菜單欄中依次選擇“版本控制”>“顯示標注”。
圖 23:包含 Subversion 標注的畫面
代碼左側將顯示文件版本編號 。
從菜單欄中依次選擇“版本控制”>“搜索歷史記錄”,然後單擊“比較”按鈕。
圖 24:包含 Subversion 搜索結果的畫面
展開文件版本號對應的節點,選擇目標文件。
圖 25:Subversion 搜索歷史記錄
多人開發 (Subversion 腳本 2)
從資源庫中簽出
從共享資源庫中簽出作業文件。
從菜單欄中依次選擇“版本控制”>“Subversion”>“簽出”。
圖 26:Subversion 簽出畫面
添加其他開發人員更改的內容
如果其他開發人員做了一些更改,應盡快加入這些內容,否則時間一長會積存越來越多的更改沖突,從而造成合並工作難以完成。
從菜單欄中依次選擇“版本控制”>“顯示更改”,然後單擊“遠程”或“全部比較”按鈕,簡單確認其他人所做的更改(此步驟可以省 略)。
圖 27:顯示 Subversion 更改的畫面
從菜單欄中選擇“版本控制”>“更新”,添加其他人的更改。如有必要,可以解決沖突。
將自己的更改內容與其他開發人員共享
根據〔單人開發 (Subversion 腳本 1)中的“將更改內容到保存到資源庫中”〕一節中的操作提交更改內容。
■用例 - CVS
准備 CVS
NetBeans IDE 6.0 / 6.1 隨帶了 CVS 和客戶機功能,不使用現有的 CVS 資源庫而要創建新資源庫時,需要另行設置 CVS 執行環境。
NetBeans IDE 6.0 / 6.1 提供了 CVS 插件。
多人開發(CVS 腳本 1)
從資源庫中簽出
從現有的共享資源庫中簽出作業文件。
從菜單欄中依次選擇“版本控制”>“CVS”>“簽出”。
圖 28:CVS 簽出畫面
添加其他開發人員的更改內容
如果其他開發人員做了一些更改,應盡快加入這些內容,否則時間一長會積存越來越多的更改沖突,從而造成合並工作難以完成。
從菜單欄中依次選擇“版本控制”>“顯示更改”,然後單擊“遠程”按鈕或“全部比較”按鈕,確認其他人所做的更改(此步驟可以省 略)。
圖 29:CVS 顯示更改的畫面
從菜單欄中選擇“版本控制”>“更新”,添加其他人更改的內容。如有必要,可以解決沖突。
將自己的更改內容與其他開發人員共享
接下來繼續開發項目,進展到一定程度時,確認更改內容並將其保存在資源庫中。
在“項目”窗口中選擇目標項目,然後從菜單欄中依次選擇“版本控制”>“比較”,以確認更改內容。
圖 30:CVS 比較畫面
確認更改沒有問題後,在“項目”窗口中選擇目標項目,然後從菜單欄中依次選擇“版本控制”>“提交”。
在彈出的“提交”窗口中輸入提交信息,然後單擊“提交”按鈕。
圖 31:CVS 提交畫面
圖 32:CVS 提交日志畫面
檢查更改歷史
保持目標文件為打開的狀態,然後從菜單欄中依次選擇“版本控制”>“顯示標注”。
圖 33:包含 CVS 標注的畫面
代碼左側將顯示文件版本編號。
從菜單欄中依次選擇“版本控制”>“搜索歷史記錄”,然後單擊“比較”按鈕。
圖 34:包含 CVS 搜索結果的畫面
展開文件版本對應的節點,然後選擇目標文件。
圖 35:CVS 歷史中包含的差異信息
■用例 - 本地歷史記錄
准備本地歷史記錄
NetBeans IDE 6.0 / 6.1 隨帶了本地歷史記錄功能。如果未標明插件為無效,則可以在初始狀態中使用。IDE 默認將保存 7 天之內的記錄 ,可以通過“工具”>“選項”>“其他”>“版本控制”>“本地歷史記錄”來設置保存期限。
單人開發(本地歷史記錄 腳本 1)
查看更改歷史
從菜單欄中依次選擇“版本控制”>“本地歷史記錄”>“顯示本地歷史記錄”。
圖 36:本地歷史記錄