svn搭建
前言1:本文講述在windows和linux下搭建svn環境的一些操作,svn分爲服務器端(一個)和客戶端(多個)是一種一對多模式。一般來說,服務端會放在linux環境下,客戶端放在windows環境下。
前言2.Subversion(SVN) 是一個開源的版本控制系統, 也就是說 Subversion 管理着隨時間改變的數據。 這些數據放置在一箇中央資料檔案庫(repository) 中。 這個檔案庫很像一個普通的文件服務器, 不過它會記住每一次文件的變動。 這樣你就可以把檔案恢復到舊的版本, 或是瀏覽文件的變動歷史。
參考–感謝以下博主的文章
參考1
參考2
參考3
一、下載與安裝
01.客戶端下載,選擇對應的版本
02.服務端下載,window版本
二、服務端搭建 (windows)
01.點擊VisualSVN Server Manager
打開服務端
02
2.創建用戶右鍵Users
點擊 Create New User
03. 右擊VisualSVN Server (Local)
點擊stop,再右擊propeties,進行下圖的操作,最後點擊start
04.創建倉庫
05.測試倉庫是否ok
右擊MyRepository,選擇 Cope URL to Clipboard,粘貼到瀏覽器
trunk、tag、branches
1.trunk:一般存放目前正在開發的項目文件
2.tag:可以理解爲項目的里程碑,也可以說是快照,凡是放在tag裏的代碼都不變了。凡是放在tag裏的代碼都是經過測試,認定穩定之後才放進去的。
3.branches:針對分支,可以有多種用法,有的是項目過於龐大,可以分成多個分支,每個模塊是一個分支,等待每個模塊開發完了在合併到主幹上。
06.客戶端搭建
在桌面任意處,右鍵,出現Svn checkout,則證明創建成功。
三、運行測試
操作一
01.本地創建文件
02.上傳
右擊project1,選擇 TortoiseSVN的import
03.瀏覽器查看
三、服務端搭建 (阿里雲ecs)
1.安裝
- apt-get install subversion; 下載svn
- server --version; 查看svn的版本
2.創建版本庫–多倉庫
- 1.創建用於存放版本庫的目錄(此目錄爲所有項目的根目錄)
- mkdir -p /usr/local/svnRepos
- 2.根據實際情況創建多個項目路徑
- mkdir -p /usr/local/svnRepos/project1
- mkdir -p /usr/local/svnRepos/project2
- 3.創建多個svn版本庫,與剛剛創建的項目路徑一一對應
- svnadmin create /usr/local/svnRepos/project1
- svnadmin create /usr/local/svnRepos/project2
- 4.配置porject1
- 5.到project1目錄
- cd /usr/local/svnRepos/project1/conf
- 6.列出文件
- ls
- 7.設置用戶名和密碼
- vi passwd
- zxq = 1234
- 8.設置authz
- [groups]
- [/]
- zxq = rw
- 9.設置svnserve.conf
- anon-access = none # 使非授權用戶無法訪問
- auth-access = write # 使授權用戶有寫權限
- password-db = password
- authz-db = authz # 訪問控制文件
- realm = /usr/local/svnRepos/project1
- 10.配置project2,省略
在每個版本庫中的conf目錄如下:
| - authz 權限控制文件
| - passwd 帳號密碼文件
| - svnserve.conf SVN服務配置文件
3.啓動並驗證版本庫
- 01.啓動
- 如果在一臺服務器上同時啓動多個項目版本庫,那麼啓動路徑必須是所有項目倉庫的根路徑,比
- 如:
- /usr/local/svnRepos/project1
- /usr/local/svnRepos/project2
- 對應/usr/local/svnRepos/
- 啓動命令
- svnserve -d -r /usr/local/svnRepo/
- 02.查看svn端口
- netstat -antp | grep svn
- 03.關閉svn
- killall svnserve
- 04.連接
- url svn://ip:3690/project1
- 用戶名 zxq
- 密碼 1234
部分截圖供參考
end ~
本篇博文走了很多坑,都不淺,還好解決了,再次感謝csdn上的參考,