svn学习笔记(一)
一、svn介紹
1.1 項目管理中的版本控制問題
???????? 通常軟件開發由多人協作開發,如果對代碼文件、配置文件、文檔等沒有進行版本控制,將會出現很多問題:
- 備份多個版本,占用磁盤空間大
- 解決代碼沖突困難
- 容易引發BUG
- 難于追溯問題代碼的修改人和修改時間
- 難于恢復至以前正確版本
- 無法進行權限控制
- 項目版本發布困難
1.2 什么是版本控制
版本控制(Revision control)是維護工程藍圖的標準做法,能追蹤工程藍圖從誕生一直到定案的過程。是一種記錄若干文件內容變化,以便將來查閱特定版本修訂情況的系統。
1.3 svn是什么?
SVN(Subversion)是近年來崛起的版本管理工具,在當前的開源項目里(J2EE),幾乎95%以上的項目都用到了 SVN。Subversion 項目的初衷是為了替換當年開源社區最為流行的版本控制軟件 CVS,在 CVS的功能的基礎上有很多的提升同時也能較好的解決 CVS 系統的一些不足。
1.4 svn的使用方法
svn是基于客戶/服務器模式:
- 復制-修改-合并方案(Subversion默認的模式)
在這種模型里,每一個客戶讀取項目配置庫建立一個私有工作副本——版本庫中文件和目錄的本地映射。用戶并行工作,修改各自的工作副本,最終,各個私有的復制合并在一起,成為最終的版本,這種系統通??梢暂o助合并操作,但是最終要靠人工去確定正誤。
- 鎖定-修改-解鎖方案
在這樣的模型里,在一個時間段里配置庫的一個文件只允許被一個人修改。 此模式不適合軟件開發這種工作。
二、svn服務端安裝配置
2.1 兩種服務端安裝包
【官方安裝包】
官方網站:http://subversion.apache.org/
下載:http://subversion.apache.org/download.cgi
官方提供的服務端安裝包,安裝后需要通過命令行操作,適用于專業配置管理員使用。
【圖形化服務端】
志愿者開發的圖形化操作界面的svn服務端,它適用于普通軟件開發人員使用。
下載地址:https://www.visualsvn.com/downloads/
2.2 安裝圖形化服務端
查看程序菜單:
查看服務,VisualSVN成功啟動:
2.3?創建倉庫
svn服務端創建完成需要創建倉庫,倉庫中存放要版本控制的文件。
啟動VisualSVN server manager,新建倉庫:
選擇文件存儲方式:
創建一個空的倉庫:
設置用戶訪問倉庫權限:
倉庫創建成功:
倉庫地址為https://ip地址或計算機名/svn/倉庫名稱
2.4?創建工程目錄
倉庫中存放開發項目代碼、文檔等,需要創建一個工程目錄。
創建成功:
- trunk:項目開發代碼的主體,是從項目開始直到當前都處于活動的狀態,從這里可以獲得項目最新的源代碼以及幾乎所有的變更歷史信息。
- branch:從trunk的某個點分離出來的代碼拷貝,通??梢栽诓挥绊懼鞲傻那疤嵯略谶@里進行重大bug的修改,或者做實驗性的開發,以及定制功能開發等。如果分支達到了預期的目的,通??梢员缓喜?#xff08;Mgerge)到主干中。
- tag:用來表示trunk和branch的某個點的狀態,以代表項目的某個穩定狀態,通常為最終發布狀態。
工程目錄創建完成,查看它的svn地址:
拷貝svn地址:
三、TortoiseSVN客戶端
3.1 svn客戶端類型
svn客戶端需要通過網絡訪問svn服務端提交文件、查詢文件等,可通過以下客戶端類型訪問svn服務端:
1、使用Subversion提供的客戶端命令,使用方式:在命令行下輸入命令操作。
2、使用Torotise圖形化界面操作(推薦)
3、使用Eclipse等開發工具插件操作(推薦)
3.2?TortoiseSVN的下載安裝
TortoiseSVN是Subversion版本控制系統的一個免費開源客戶端,不需要為使用它而付費。
TortoiseSVN是 Subversion 的 Windows 擴展。它使你避免接觸 Subversion 枯燥而且不方便的 Command Line。它完全嵌入 Windows Explorer,使用時只需在正常的窗口里右鍵操作就可以了。
下載:http://tortoisesvn.net/downloads.html? ?提供 32位和64位不同版本,安裝tortoiseSVN 需要修改客戶端電腦右鍵菜單,安裝后需要重啟電腦。
3.3 瀏覽倉庫
使用Tortoise瀏覽svn服務端的倉庫的內容:
?
四、權限管理(了解)
4.1 認證授權機制
在企業開發中會為每位程序員、測試人員等相關人員分配一個賬號,用戶通過使用svn客戶端連接svn服務時需要輸入賬號和密碼,svn服務對賬號和密碼進行校驗,輸入正確可以繼續訪問,當用戶訪問倉庫下某個目錄時,svn服務對用戶進行授權,如果用戶擁有該目錄的訪問權限方可訪問。
判斷賬號和密碼輸入是否正確的過程即認證過程。
判斷用戶是否擁有目錄的讀/寫權限時即授權過程。
4.2 創建用戶
查看已創建的用戶:
修改用戶:
4.3 創建組
查看創建的組:
修改組:
4.4 分配僅限
給倉庫下的每個目錄分配權限對訪問進行控制。
4.4.1 刪除默認權限
刪除系統安裝后默認權限:
4.4.2 示例一:開發人員擁有讀寫權限
進入權限分配界面:
添加組或用戶:
分配權限:
繼承父目錄權限、不可訪問、讀權限、讀/寫權限
訪問時輸入賬號:
?
登陸測試是否有讀/寫權限:
4.4.3 示例二:測試人員擁有讀權限
登陸測試是否有讀/寫權限:
4.4.4 清除認證緩存
有幾種情況需要清除認證緩存:
1、本地使用多個賬號登陸,每次輸入的賬號和密碼都不一樣
2、當賬號密碼修改后(建議清理)
轉載于:https://www.cnblogs.com/yft-javaNotes/p/10311976.html
總結
以上是生活随笔為你收集整理的svn学习笔记(一)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 炫龙笔记本怎么样改win7 炫龙笔记本如
- 下一篇: Roman to Integer - L