快速學會SVN的搭建和使用
Subversion(SVN)是一個開源的版本控制系統,被廣泛用於協同開發。本文教你怎樣快速搭建和使用SVN版本控制系統,並進行代碼的提交、修改和恢復版本。
簡介
Subversion(SVN)是一個開源的版本控制系統, 也就是說Subversion管理著隨時間改變的數據。這些數據放置在一個中央資料檔案庫(repository)中。
這個檔案庫很像一個普通的文件伺服器,不過它會記住每一次文件的變動。這樣你就可以把檔案恢復到舊的版本,或是瀏覽文件的變動歷史。
SVN 的一些概念
repository(源代碼庫):源代碼統一存放的地方
Checkout(提取):當你手上沒有源代碼的時候,你需要從repository checkout一份
Commit(提交):當你已經修改了代碼,你就需要Commit到repository
Update (更新):當你已經Checkout了一份源代碼,Update一下你就可以和Repository上的源代碼同步,你手上的代碼就會有最新的變更
日常開發過程其實就是這樣的(假設你已經Checkout並且已經工作了幾天):Update(獲得最新的代碼) —>作出自己的修改並調試成功 —> Commit(大家就可以看到你的修改了)。
如果兩個程序員同時修改了同一個文件呢,SVN可以合并這兩個程序員的改動,實際上SVN管理源代碼是以行為單位的,就是說兩個程序員只要不是修改了同一行程序,SVN都會自動合并兩種修改。
如果是同一行,SVN會提示文件Confict,衝突,需要手動確認。
安裝SVN
兩種方法安裝
第一種
點擊免費下載阿里雲SVN版本控制鏡像。
完成之後,登錄「ECS管理控制台」,在左邊導航欄里,單擊「實例」,進入ECS實例列表頁,選擇所購ECS實例所在的地域,並找到所購ECS實例,在「IP 地址」列獲取該實例的公網IP地址。
第二種
手動安裝
環境
centos7
安裝svn
查看版本
創建版本庫
先建目錄
創建版本庫
subversion目錄說明
db目錄:就是所有版本控制的數據存放文件
hooks目錄:放置hook腳本文件的目錄
locks目錄:用來放置subversion見艱苦鎖定數據的目錄,用來追蹤存取文件庫的客戶端
format文件:是一個文本文件,裡面只放了一個整數,表示當前文件庫配置的版本號
conf目錄:是這個倉庫的配置文件(倉庫的用戶訪問賬號、許可權等)
進入conf目錄(該svn版本庫配置文件)cd conf/
authz 文件是許可權控制文件
passwd 是帳號密碼文件
svnserve.conf SVN服務配置文件
設置帳號密碼 vi passwd
在[users]塊中添加用戶和密碼,格式:帳號=密碼,如suzhan=redhat
設置許可權 vi authz
在末尾添加如下代碼:
[/]
suzhan=rw (r:讀,w:寫)
修改svnserve.conf文件 vi svnserve.conf
打開下面的幾個注釋
anon-access = read #匿名用戶可讀
auth-access = write #授權用戶可寫
password-db = passwd #使用哪個文件作為賬號文件
authz-db = authz #使用哪個文件作為許可權文件
realm = /var/svn/svnrepos # 認證空間名,版本庫所在目錄
啟動SVN版本庫
停止SVN命令
用ps -ef |grep svn 查看服務是否開啟。
在windows上測試
如果沒有TortoiseSVN客戶端,可以去這裡下載:tortoisesvn.net/downloads.html,根據從SVN伺服器下載項目自己的實際情況下載對應版本。
在你的本地項目文件夾或隨便一個地方,右鍵空白處彈出菜單,選擇SVN檢出。然後,通過從SVN服務端獲取的資源庫URL+具體的項目文件夾名下載相應項目,並可以知道下載項目的保存位置。
第一次登陸需要輸入密碼,一切以passwd文件裡面的賬戶密碼為主!
對項目的修改與提交
1. 把項目下載到本機後,其實就是一個普通的項目文件而已,你可以在裡面添加文件、修改文件、刪除文件等等。
2. 提交修改在項目文件空白處右鍵,選擇 SVN提交。
然後,輸入本次提交的版本更新信息(所作修改的注釋)、勾選要提交的操作內容,點擊確定,即可把本機項目提交到SVN伺服器資源庫,覆蓋掉資源庫項目從而實現更新。
如果發生提交衝突,即兩人都提交修改,後提交者由於版本落後會提交失敗。這時可以先把自己的項目備份,然後從服務端下載最新的項目,再把自己的項目覆蓋到本地項目文件夾,最後SVN提交即可成功提交。
我剛剛刪掉了一個文件,這裡就會顯示:
3. 獲取更新
如果別人修改了SVN服務端資源庫上的項目,你想下載最新的項目,則在本機項目文件空白處單擊滑鼠右鍵,選擇 SVN更新,即可自動完成下載,並會提示所作的更新有哪些。
注意:在原項目文件夾內選擇SVN更新的話,會自動覆蓋掉原有內容。建議:先備份,再更新,防止自己本來的項目內容丟失。
4. svn提供歷史還原功能
首先打開一個文件夾,右鍵檢出數據
然後刪掉數據。這時如果不點提交的話,可以直接點滑鼠右鍵還原即可。
如果點擊提交了,那麼系統庫里的數據也會得到同步,系統也會把它存的數據刪掉。
這時點擊svn還原是沒有用的,需要查看日誌,看看是刪掉了什麼東西。
然後把刪掉的文件保存版本到刪掉的位置。
文章來源:
https://yq.aliyun.com/articles/83737


※大白話解釋 Git和GitHub
※AI取代人類前孩子的教育需要什麼改變?
※UI設計師需要具備8個能力
※獨家翻譯:谷歌官方發布:安卓全力支持Kotlin
※如果安卓這樣對抗蘋果Swift……
TAG:優才學院 |
※搭建SVN伺服器
※僅使用NumPy完成卷積神經網路CNN的搭建
※在IIS里搭建FTP伺服器
※虛擬化技術KVM的搭建
※VUE的環境搭建
※從零學習Spring MVC框架「環境搭建和MVC架構」
※助力製造業轉型升級,一招教你用KPPW搭建大學士網!
※NVIDIA英偉達:深度學習伺服器搭建指南
※rasa NLU+CORE 搭建自己的智能客服
※ISRO成功發射新衛星 地區GPS系統搭建完成
※用KPPW搭建一個BIM眾包網,打造BIM技術眾包領域的王牌!
※Docker搭建L2TP-VPN伺服器
※ASP .NET入門及其環境搭建
※CentOS搭建DNS伺服器實錄
※在 Windows 搭建 SVN 服務
※用KPPW搭建一個魅客空間,開啟設計眾包新征程!
※搭建自己的 CDN 的樂趣和好處
※如何搭建自己的專屬VPN
※快速搭建話梅糖這類工程眾包平台,有KPPW就夠了!
※SDVOE方案的搭建與評測