完成了svn伺服器的安裝配置,怎麼使用svn呢?在Windows下,最常用的svn用戶端是TortoiseSVN,有時簡稱為TSVN。
TortoiseSVN安裝
可以從http://tortoisesvn.tigris.org/下載最新版,目前最新版是TortoiseSVN-1.5.6.14908。
下載後,安裝。重啟機器,使目錄表徵圖生效。
在資源管理員中,滑鼠右鍵點擊任意位置,右鍵菜單中出現“SVN Checkout”,即為安裝成功。
svn操作流程
開發人員使用svn進行開發的一般流程是:
checkout(檢出)項目
——> 更新檔案或目錄 ——> update
——> 修改檔案或目錄 —— commit(提交)變更
——> 增加檔案或目錄 ——> add(增加) 檔案或目錄——> commit(提交)
——> 刪除檔案或目錄 ——> commit(提交)上一級目錄
其中,checkout只進行一次,update、commit、add操作根據需要會經常使用。
checkout(檢出)操作
在資源管理員中,滑鼠右鍵點擊任意位置,在菜單中選擇”SVN Checkout”。
出現對話方塊,在”URL of repository:”中輸入svn串,格式是”協議://ip:port/版本庫/項目/目錄“。根據實際情況輸入,例如http://code.google.com/p/google-web-toolkit/source。如有疑問,向svn伺服器管理員詢問。
在“checkout directory”中輸入本地存放代碼的目錄,請選擇空目錄或新目錄。svn會清空該目錄下的一切檔案。輸入完畢,點擊”ok”按鈕。
如果需要,會提示輸入使用者名稱和密碼。選上”Save authentication”後,以後可以自動登入,不必重輸密碼。
checkout…有時候時間會很長。結束,點”ok”。
update(更新)操作
在資源管理員中,選擇本地目錄或檔案,滑鼠右鍵菜單選擇”SVN Update”。會提示有無檔案需要更新,點”ok”完成。
commit(提交)操作
把本地目錄中變化了的檔案或目錄提交到版本庫中,用commit操作。增加新檔案或目錄,要先用add,再commit。刪除檔案或目錄,commit上一級目錄。
在資源管理員中,選擇本地目錄或檔案,滑鼠右鍵菜單選擇”SVN Commit”。
顯示分上下2個框的介面。在上框輸入解說文字,建議寫版本號碼或變更原因,以便將來尋找。下框列出提交的內容。沒有可提交的內容,下框中會顯示一段解說文字。點“ok”。
提交結束,顯示結果。點“ok”。
解決代碼衝突
如果commit時出現“You have to update your work copy first.”紅色警告,說明版本庫中的此檔案已經被其他人修改了。請先點“ok”按鈕退出。執行update,然後再commit。
如果修改與update得到的代碼不衝突,則自動合并。如果衝突(比如對同一行代碼進行了修改),則出現”One or more files are in a conflicted state.“紅色警告,併產生幾個檔案記錄衝突。一般情況下,我們不要直接編輯衝突檔案。而按照以下操作手工解決衝突。
在資源管理員中,選擇commit時衝突的那個檔案,滑鼠右鍵菜單選擇”Edit conficts”。
出現介面,分為”Theirs”、”Mine”和”Merged”3部分,表示”別人修改的內容”、 ”我修改的內容”和”合并後的結果”3部分。我們是要將”別人修改的內容”和”我修改的內容”有取捨地合并起來,形成”合并後的結果”。
合并一般分為4種情況:
?保留”我的修改”,捨棄”別人的修改”。滑鼠右鍵點擊Mine框的相應行,點擊”Use this text block”。
?捨棄”我的修改”,保留”別人的修改”。滑鼠右鍵點擊Theirs框的相應行,點擊”Use this text block”。
?同時保留”我的修改”和”別人的修改”,並將”我的修改” 放在前面。滑鼠右鍵點擊Mine框的相應行,點擊”Use text block from mine before theirs”。
?同時保留”我的修改”和”別人的修改”,並將”別人的修改”放在前面。滑鼠右鍵點擊Mine框的相應行,點擊”Use text block from theirs before mine”。
合并完成,Ctrl+S存檔,退出。
然後,在資源管理員中,選擇衝突檔案,滑鼠右鍵菜單選擇”Resolved”,標記衝突已解決。系統會自動刪除因衝突而建立的檔案。此時,就可以繼續進行commit操作了。
add(增加)操作
增加新檔案或目錄,要先用add,再commit。
在資源管理員中,選擇新增的目錄或檔案,滑鼠右鍵菜單選擇”Add”。
提示增加的檔案。點“ok”繼續。結束點“ok”。
刪除操作
刪除檔案或目錄,commit上一級目錄。
本文來自http://jijian91.com 原文http://jijian91.com/blog20061215/tortoisesvn.html