1. 服務器端VisualSVN
1.1 下載地址
1.2 安裝步驟
1.3 創建倉庫
- 右擊Repositories,點擊Create New Repository
1.4 在倉庫下創建項目
- 右鍵倉庫svn_test,新建,Project Structure
- 右擊truck,copy url to clipboard
1.5 創建用戶
- 右擊Users,Create User
1.6 權限分配
- 這裏暫時忽略,以後再補充
2. 客戶端TortoiseSVN
2.1 下載地址
2.2 安裝步驟
- 一直下一步即可
- 安裝完畢後需要重啓電腦,右鍵的菜單會多出svn的選項
2.3 常用操作
2.3.1 檢出操作Checkout
- 第一次從svn倉庫下載項目到本地工作目錄時並跟svn進行關聯同步時使用(只使用一次即可,後面都是用update)
- 實際工作中倉庫項目的url和用戶密碼會有管理人員給予
2.3.2 增加關聯操作Add
2.3.3 提交同步操作Commit
對文件進行了增刪改等操作都必須Commit後纔會提交到服務器端進行同步
- 右擊感嘆號目錄或者在目錄中的空白處右擊,選中SVN Commit
2.3.4 更新操作Update
-
從服務器端把最新版本代碼更新到自己的工作目錄
-
把aaa提交上去的文件在bbb工作目錄更新下來了
2.3.5 刪除操作
- Delete把文件進行刪除並關聯到服務器端,但未提交,服務器端文件未被刪除,只有commit後纔會真正刪除
- Delete後無法通過Update回來,因爲自己已標記刪除,即使服務器端文件未被刪除
- 提交刪除文件操作同步到服務器端
2.3.6 查看當前未提交的修改操作(增刪改)的文件Check for modifications
- 可以恢復到修改(增刪改)狀態前
2.3.7 更新到指定版本Update to revision
2.3.8 回滾恢復操作Revert
- 只能回滾恢復未被Commit的文件
2.4 衝突解決
2.4.1 概述
- 用戶修改了非最新版本的文件,提交時產生衝突
- AAA用戶和BBB用戶都從服務器端更新了最新版本10的文件test.txt,AAA修改該文件並提交,服務器端版本就變成了版本11,但BBB不知道,BBB也要修改test.txt文件,然後提交,就會出現衝突,因爲test.txt已經從版本10變成版本11,但BBB仍然改的是版本10
2.4.2 模擬情形
-
版本10的文件test.txt
-
AAA修改了test.txt文件並提交
-
BBB修改舊版本的test.txt文件
-
BBB對test.txt文件的修改進行提交
2.5.3 解決方式一
- 取消提交,取消更新,複製自己修改後的test.txt文件到其他地方備份,使用Revert回滾操作到版本10,然後再更新把版本11從服務端更新下來,根據版本11的test.txt與自己備份的test.txt進行比對修改,修改後再提交
2.5.4 解決方式二
-
BBB把最新版本更新下來並取消test.txt的提交操作
-
更新後BBB的工作目錄下多了幾個文件
-
編輯衝突
- 合併文件框的右鍵菜單4選1即可(我這裏選了第三個,變成aaa222111)
- 保存並標記已解決衝突,會自動把多餘產生的文件刪除
3. Eclipse安裝SVN插件
3.1 下載地址
3.2 安裝步驟
- Help→Install New SoftWare
- 後面一直下一步就行,安裝完畢會重啓Eclipse
3.3 SVN插件的使用
-
3.3.1 分享項目到svn倉庫
- 右擊Eclipse中的項目→Team→Share Project→SVN
- 然後一直下一步
- 繼續一直下一步
- 後面需要輸入帳號密碼,如果沒有保存用戶,則需要輸入多次帳號密碼
- 設置完成後項目有一個星號*圖標,這隻表示項目與svn倉庫關聯了,但項目代碼並未提交到svn服務器上,需要[右擊項目→Team→提交]進行提交項目到服務器上,提交完項目有一個小圓柱圖標
-
3.3.2 檢出項目
- 打開SVN資源庫界面,Window→Show View→Other
- 右擊空白處新建資源庫位置
- 後面的認可證書和輸入帳號密碼
- 檢出項目
- 打開SVN資源庫界面,Window→Show View→Other
-
3.3.3 其他操作
- 大部分功能都在右擊項目→Team→菜單欄
- 大部分功能都在右擊項目→Team→菜單欄