版本控制之svn命令行下檢出、提交、更新

4 使用命令行模式訪問SVN服務器 
4.1 檢出 
①首先進入本身的工做目錄,例如:D:\DevWorkSpace\SVNSpace 
②運行svn checkout命令,命令格式以下 
格式 svn checkout svn://SVN服務器主機地址/具體倉庫目錄 保存檢出內容的目錄 
舉例 svn checkout svn://localhost/ERP MyERP 
運行結果 取出版本 0。 
③工做副本 
運行checkout命令後進入MyERP目錄,看到裏面什麼都沒有。真的什麼都沒有嗎?不是的。檢出命令會在這一目錄下建立一個隱藏目錄.svn,用來保存與服務器交互的重要信息,其中包括從服務器端取回的最新版本信息、文件狀態、更新時間等。SVN正是以此爲依據判斷當前目錄中文件的狀態。因此這個隱藏目錄千萬不要刪除或修改其中的內容——徹底無視它的存在吧。若是服務器端保存的文件能夠視爲一個「正本」,那麼每一個開發人員檢出到本地目錄的文件能夠視爲「副本」,一般稱爲工做副本。 
4.2 提交 
①進入D:\DevWorkSpace\SVNSpace\MyERP目錄 
②建立一個文件test.txt 
③執行svn commit命令,運行結果是 
D:\DevWorkSpace\SVNSpace\MyERP>svn commit test.txt 
svn: E200009: 提交失敗(細節以下): 
svn: E200009: 「D:\DevWorkSpace\SVNSpace\MyERP\test.txt」 還沒有歸入版本控制 
說明一個文件必須歸入版本控制才能夠提交到服務器端。 
④執行svn add命令,將test.txt歸入版本控制 
D:\DevWorkSpace\SVNSpace\MyERP>svn add test.txt 
A test.txt 
⑤再次執行svn commit命令 
D:\DevWorkSpace\SVNSpace\MyERP>svn commit test.txt 
svn: E205007: 提交失敗(細節以下): 
svn: E205007: 沒法使用外部編輯器得到日誌信息;考慮設置環境變量 $SVN_EDITOR,或者使用 –message (-m) 或 –file (-F) 選項 
svn: E205007: 沒有設置 SVN_EDITOR,VISUAL 或 EDITOR 環境變量,運行時的配置參數中也沒有 「editor-cmd」 選項 
此時要求附加日誌信息 
⑥使用-m參數附加日誌信息 
D:\DevWorkSpace\SVNSpace\MyERP>svn commit -m 「My first commit」 test.txt 
svn: E170001: 提交失敗(細節以下): 
svn: E170001: 認證失敗 
緣由是沒有權限 
⑦暫時先開啓匿名訪問權限 
[1]進入對應的版本庫目錄下的conf目錄:D:\DevRepository\Subversion\ERP\conf 
[2]打開svnserve.conf 
[3]將第19行的# anon-access = read改成anon-access = write,也就是去掉「# 」,將read改成write。注意前面不要留空格,必定要頂格寫。 
[4]不須要重啓SVN服務,甚至命令行窗口都不須要從新打開。 
⑧從新執行提交命令 
D:\DevWorkSpace\SVNSpace\MyERP>svn commit -m 「My first commit」 test.txt 
正在增長 test.txt 
傳輸文件數據. 
提交後的版本爲 1。 
說明提交成功了。 
⑨其實svn commit命令最後能夠不指定具體文件,此時表示提交當前工做副本中的全部修改。 
4.3 更新 
①將服務器端文件檢出到一個新的目錄,模擬另一個終端 
D:\DevWorkSpace\SVNSpace>svn checkout svn://localhost/ERP TomERP 
A TomERP\test.txt 
取出版本 1。 
②回到MyERP目錄,對test.txt文件修改後提交。 
③進入TomERP目錄 
④執行svn update命令 
D:\DevWorkSpace\SVNSpace\TomERP>svn update 
正在升級 ‘.’: 
U test.txt 
更新到版本 2。 
這樣咱們就能夠在TomERP目錄下看到MyERP目錄下提交的修改。 
⑤思考:更新和檢出的相同點和不一樣點分別是什麼? 
檢出 更新 
相同點 從服務器端下載最新內容 
不一樣點1 下載整個項目 下載與本地工做副本不一樣的內容 
不一樣點2 建立.svn目錄,使檢出目錄成爲工做副本 依賴.svn目錄 
不一樣點3 只能操做1次 能夠操做屢次git

相關文章
相關標籤/搜索