【项目管理工具】SVN
1. svn介紹
1.1 項目管理中的版本控制問題
解決代碼沖突困難
容易引發bug
難于恢復至以前正確版本
無法進行權限控制
項目版本發布困難
1.2 什么是版本控制
版本控制是維護工程藍圖的標準做法,能追蹤工程藍圖從誕生一致到定案的過程。是一種記錄若干文件內容變化,以便將來查閱特定版本修訂情況的系統。
1.3 svn是什么
SVN是版本管理工具,在當前的開源項目里(J2EE),幾乎都會使用SVN。Subversion項目的初衷是為了替換當年開源社區最為流行的版本控制軟件cvs,在cvs的功能的基礎上有很多的提升同時也能較好的解決CVS系統的一些不足。
1.4 svn的使用方法
svn是基于客戶/服務器模式:
svn的兩種模式:
(1)復制-修改-合并(SVN默認的模式)
在這種模型里,每個客戶讀取項目配置庫建立一個私有工作副本--版本庫中文件和目錄的本地映射。用戶并行工作,修改各自的工作副本,最終,各個私有的復制合并在一起,成為最終的版本,這種系統通常可以輔助合并操作,但是最終要靠人工去確定正誤.
(2)鎖定-修改-解鎖
在這樣的模型里,在一個時間段里配置庫的一個文件只允許被一個人修改。此模式不適合軟件開發這種工作。
1.5 SVN的工作方式
2. svn服務端安裝配置
1. 下載地址:https://www.visualsvn.com/downloads/
2. 安裝服務端
打開程序: 安裝目錄inmsc程序
3. 創建倉庫
svn服務端創建完成需要創建倉庫,倉庫中存放要版本控制的文件
右鍵Repositories -》 Create New Repository
選擇文件存儲方式:
創建一個空的倉庫:
設置用戶訪問權限:
倉庫創建成功:
倉庫地址為https://ip地址或計算機名/svn/倉庫名稱
4. 創工程目錄
倉庫中存放開發項目代碼、文檔等,需要創建一個工程目錄。
右鍵倉庫 -》新建 -》 Project Structure...
創建成功:
trunk:項目開發代碼的主體,是從項目開始知道當前都處于活動的狀態,從這里可以獲得最新的源代碼以及幾乎所有的變更歷史信息。
branch:從trunk的某個點分離出來的代碼拷貝,通常可以在不影響主干的前提下在這里進行重大bug的修改,或者做實驗性的開發,以及定制功能開發等。如果分支達到了預期的目的,通常可以被合并(Mgerge)到主干中。
tag:用來表示trunk和branch的某個點的狀態,以代表項目的某個穩定狀態,通常為最終發布狀態。
工程創建完成,查看它的svn地址:
拷貝svn地址:
右鍵trunk -》 Copy URL to Clipboard
3. TortoiseSVN客戶端
1. 由于官網下載較慢,選擇百度網盤下載
鏈接:https://pan.baidu.com/s/1z4FU8K5C9MX0gUEIJQqZ6Q 密碼:gvjm
安裝完成后需要重啟電腦!!!
重啟后使用Tortoise瀏覽svn服務端的倉庫的內容:
在桌面右鍵發現有 TortoiseSVN選項 選擇Repo-broeser
進入后會讓你輸入用戶名密碼,下面會講到
4. 權限管理(了解)
1. 認證授權機制
在企業開發中會為每位程序員、測試人員等相關人員分配一個賬號,用戶通過使用svn客戶端連接svn服務時需要輸入賬號和密碼,svn服務對賬號和密碼進行校驗,輸入正確可以繼續訪問,當用戶訪問倉庫下某個目錄時,svn服務對用戶進行授權,如果用戶擁有該目錄的訪問權限方可訪問。
判斷賬號和密碼輸入是否正確的過程即認證過程。
判斷用戶是否擁有目錄的讀/寫權限時即授權過程。
2. 創建用戶
打開服務端
Users -》 Create New User
查看已創建的用戶:
3. 創建組
右鍵Groups -》 Create New Group
修改組:
右鍵分組 -》 Edit...
4. 分配權限
給倉庫下的每個目錄分配權限對訪問進行控制。
(1)刪除系統安裝后默認權限:
右鍵倉庫 -》 Properties
(2)示例一:開發人員擁有讀寫權限
進入權限分配界面:
右鍵倉庫 -》 Properties...
添加組或用戶:
分配權限:
繼承父目錄權限、不可訪問、讀寫權、讀/寫權限
客戶端訪問時輸入賬號密碼:
登錄測試是否有讀/寫權限:
右鍵trunk文件 -》 Create folder
(3)清楚認證緩存
右鍵TortoiseSVN -> Settings
4. TortoiseSVN日常使用
1. 瀏覽倉庫
Repo-browser: 瀏覽倉庫中資源信息
2. 導入導出
(1)Export:導出項目,和checkout區別(checkout檢出文件,含有.svn隱藏文件夾),會和svn倉庫交互,export導出,沒有.svn隱藏文件夾)
右鍵桌面 -> TortoiseSVN -> Export 。。。
(2)import 將本地資源導入到svn服務器
右鍵桌面 -> TortoiseSVN -> Import。。。
3. 修改提交
(1)Checkout
檢出項目,復制項目的副本到本地。
右鍵桌面 -》 SVN Checkout...
(2)add
在檢出的目錄中添加文件:
新建一個文件 -> 右鍵TorortoiseSVN -> add(添加add標識)
右鍵桌面 -》 SVN COMMIT(提交)
* add to ignore lit : 添加到忽略列表(標記該文件不需要版本控制)
(3)Commit
提交Commit 提交本地修改至svn服務器:
在檢出目錄或要提交修改的目錄右鍵:SVN Commit...
(4)update
更新倉庫的文件到本地
在檢出目錄或子目標或文件上右鍵:SVN Update
(5)Delete
刪除版本庫文件
右鍵文件 -》 delete (添加刪除標記)
(6)恢復
在檢出目錄或子目錄操作會記錄操作日志,提交前可以回滾操作。
在要回滾的檢出目錄或子目錄中右鍵: Revert...
5. 沖突處理
兩個客戶端同時修改同一個文件,改動同一個位置,發生沖突情況
如果當commit 遇到文件已經過時,說明另一個人可能改動過 ----- update
手動Merge 后,需要將編輯后沖突文件,標記為已經解決 , 再進行commit
6. eclipse的SVN插件使用
6.1 插件的安裝
下載地址:鏈接:https://pan.baidu.com/s/1zidWGqERKN_dYK9wXHZruA 密碼:9nnz
1. 進eclipse軟件安裝界面
help -> Instal New Software
2. 安裝svn插件
上邊命令行輸入:SVN - jar:file:/e:/SVN/site-1.10.11.zip!/
點擊下一步。
接受協議,完成。
出現提示,選擇繼續安裝。OK
安裝完成,查看eclipse視圖有SVN選項說明安裝成功:
6.2 將項目共享到svn
新建SVN倉庫連接 , 切換“SVN資源庫” 視圖
在視圖位置右鍵 -》 新建 -》資源庫位置 -》 輸入倉庫位置
共享項目到svn
右鍵項目 -》 Team ->share Project...
6.3 從svn檢出
將svn管理項目檢出到工作區
右鍵svn資源庫的倉庫 -》 檢出
6.4 解決沖突
右鍵項目 -》 Team -> 編輯沖突 -》 手動merge后,標記為解決
6.5 重置用戶名密碼
刪除C:User(用戶)"你的用戶名"AppDataRoamingSubversionauth下的所有文件
————————————————
版權聲明:本文為CSDN博主「衡木」的原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/qq_37581282/java/article/details/81364852
勿談他人高新 , 且看閑時誰在拼
總結
以上是生活随笔為你收集整理的【项目管理工具】SVN的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 《神奇的数学》颠覆你对数学的初始感觉
- 下一篇: 点云下采样1