名師指引 SVN操作流程
本節簡單向大家描述一下SVN操作流程,在學習SVN的過程中SVN操作流程是必須要掌握的,在這大家分享一下,看完本文你肯定有不少收獲,希望本文能教會你更多東西。
在沒有講解SVN操作流程之前向大家介紹幾家免費提供svn源代碼管理的站點。
國內:http://www.coollittlethings.com/
只需要注冊即可使用,速度很快,使用http進行傳輸,無web管理功能。
國外:http://code.google.com/hosting/
google提供的,速度比較快,申請即可使用,使用https進行傳輸,安全性,可靠性高,帶有web管理功能。http://developer.novell.com/wiki/index.php/Project_Hosting
novell公司提供,申請后需要審核,速度較快,使用https進行傳輸,安全性,可靠性高,帶有web管理功能。推薦使用google提供的。
完成了svn服務器的安裝配置,怎么使用svn呢?在Windows下,最常用的svn客戶端是TortoiseSVN,有時簡稱為TSVN。
開發人員使用svn進行開發的一般流程是:
checkout(檢出)項目
——>更新文件或目錄——>update
——>修改文件或目錄——commit(提交)變更
——>增加文件或目錄——>add(增加)文件或目錄——>commit(提交)
——>刪除文件或目錄——>commit(提交)上一級目錄
其中,checkout只進行一次,update、commit、add操作根據需要會經常使用。下面看一下SVN操作流程中有關這些操作的介紹。
checkout(檢出)操作
在資源管理器中,鼠標右鍵點擊任意位置,在菜單中選擇”SVNCheckout”。
出現對話框,在”URLofrepository:”中輸入svn串,格式是”協議://ip:port/版本庫/項目/目錄“。根據實際情況輸入,例如http://code.google.com/p/google-web-toolkit/source。如有疑問,向svn服務器管理員詢問。在“checkoutdirectory”中輸入本地存放代碼的目錄,請選擇空目錄或新目錄。svn會清空該目錄下的一切文件。輸入完畢,點擊”ok”按鈕。
如果需要,會提示輸入用戶名和密碼。選上”Saveauthentication”后,以后可以自動登錄,不必重輸密碼。checkout…有時候時間會很長。結束,點”ok”。
update(更新)操作
在資源管理器中,選擇本地目錄或文件,鼠標右鍵菜單選擇”SVNUpdate”。會提示有無文件需要更新,點”ok”完成。
commit(提交)操作
把本地目錄中變化了的文件或目錄提交到版本庫中,用commit操作。增加新文件或目錄,要先用add,再commit。刪除文件或目錄,commit上一級目錄。在資源管理器中,選擇本地目錄或文件,鼠標右鍵菜單選擇”SVNCommit”。顯示分上下2個框的界面。在上框輸入說明文字,建議寫版本號或變更原因,以便將來查找。下框列出提交的內容。沒有可提交的內容,下框中會顯示一段說明文字。點“ok”。提交結束,顯示結果。點“ok”。我們看一下SVN操作流程中如何解決代碼沖突問題。
解決代碼沖突
如果commit時出現“Youhavetoupdateyourworkcopyfirst.”紅色警告,說明版本庫中的此文件已經被其他人修改了。請先點“ok”按鈕退出。執行update,然后再commit。
如果修改與update得到的代碼不沖突,則自動合并。如果沖突(比如對同一行代碼進行了修改),則出現”Oneormorefilesareinaconflictedstate.“紅色警告,并產生幾個文件記錄沖突。一般情況下,我們不要直接編輯沖突文件。而按照以下操作手工解決沖突。
在資源管理器中,選擇commit時沖突的那個文件,鼠標右鍵菜單選擇”Editconficts”。
出現界面,分為”Theirs”、”Mine”和”Merged”3部分,表示”別人修改的內容”、”我修改的內容”和”合并后的結果”3部分。我們是要將”別人修改的內容”和”我修改的內容”有取舍地合并起來,形成”合并后的結果”。
合并一般分為4種情況:
保留”我的修改”,舍棄”別人的修改”。鼠標右鍵點擊Mine框的相應行,點擊”Usethistextblock”。
舍棄”我的修改”,保留”別人的修改”。鼠標右鍵點擊Theirs框的相應行,點擊”Usethistextblock”。
同時保留”我的修改”和”別人的修改”,并將”我的修改”放在前面。鼠標右鍵點擊Mine框的相應行,點擊”Usetextblockfromminebeforetheirs”。
同時保留”我的修改”和”別人的修改”,并將”別人的修改”放在前面。鼠標右鍵點擊Mine框的相應行,點擊”Usetextblockfromtheirsbeforemine”。
合并完成,Ctrl+S存盤,退出。然后,在資源管理器中,選擇沖突文件,鼠標右鍵菜單選擇”Resolved”,標記沖突已解決。系統會自動刪除因沖突而新建的文件。此時,就可以繼續進行commit操作了。
add(增加)操作
增加新文件或目錄,要先用add,再commit。在資源管理器中,選擇新增的目錄或文件,鼠標右鍵菜單選擇”Add”。提示增加的文件。點“ok”繼續。結束點“ok”。
刪除操作
刪除文件或目錄,commit上一級目錄。本節介紹SVN操作流程完畢,請關注本節其他相關報道。
【編輯推薦】