程式碼管理平臺SVN
22.1 程式碼管理平臺介紹
22.2 安裝svn
22.3 客戶端上使用svn(linux)
22.4 客戶端上使用svn(windows)
擴充套件內容
同學分享的svn文件 http://note.youdao.com/noteshare?id=1bb87a28a2973ae5722bf765882c2d8f
svn 多倉庫管理 http://elim.iteye.com/blog/1171108
svn+ssh http://www.linuxfly.org/post/450/
svn清除儲存的使用者名稱和密碼 http://holy2010.blog.51cto.com/1086044/645944
svn命令詳解 http://blog.sina.com.cn/s/blog_963453200101eiuq.html
svn的鉤子 http://coolnull.com/1716.html
一、程式碼管理平臺介紹
版本控制,記錄若干檔案內容變化,以便將來查閱特定版本修訂情況 版本管理工具發展簡史,cvs svn git 參考http://luckypoem14.github.io/test/2012/04/24/scm-history/ svn全稱subversion,是一個開源版本控制系統,始於2000年 git是linux創始人linus發起的,2005年釋出,最初目的是更好管理linux核心程式碼 git和svn不同在於git不需要依賴服務端就可以工作,即git是分散式的 關於git和svn的比較大家參考http://blog.lishiming.net/?p=305 github是基於git的線上web頁面程式碼託管平臺,可以選擇付費服務 gitlab可以認為是一個開源的github,兩者沒有直接關係
二、安裝svn服務端
yum install -y subversion
建立目錄和版本庫
mkdir -p /data/svnroot/myproject svnadmin create /data/svnroot/myproject 在這個空目錄下,初始化檔案
cd /data/svnroot/myproject/conf #authz為許可權配置檔案,passwd為密碼檔案,svnserve倉庫的配置檔案,通過此配置檔案啟動服務
vim authz //配置檔案新增如下內容:
[groups] #groups定義組的 admins = tobe,user1 [/] #這個/(根)指的是/data/svnroot/myproject/這個目錄 @admins = rw #@後跟組名,許可權是rw,除了admins組外,其餘的都是r許可權 *= r [myproject:/] #myproject專案名字,即myproject目錄,在svnroot下有多個專案的情況下使用 user1 = rw
vim passwd //加入如下內容,左邊使用者名稱,右邊密碼
[users] tobe = tobe_!(*$123 user1 = user1_^^^123 user2 = user2_***123
vim svnserver.conf //更改或增加如下內容
[general] anon-access = none #匿名使用者 auth-access = write #被授權的使用者 password-db = passwd #使用者密碼檔案存放位置,db指檔案,檔案在當前目錄下,針對svnserver檔案的相對路徑 authz-db = authz #許可權控制檔案位置,db指檔案 realm = /data/svnroot/myproject 對哪個專案生效,寫絕對路徑 svnserve -d -r /data/svnroot //這樣就啟動了,-d後臺啟動,-r 指定路徑
三、客戶端上使用svn(linux)
使用前注意防火牆和iptables
為了試驗便捷,把001這臺機器即作為服務端,也作為客戶端使用,002也作為客戶端
客戶端也需要安裝: yum install -y subversion
001:
home下建立一個試驗目錄svntest svn checkout svn://192.168.183.3/myproject --username=tobe 檢出程式碼,ip後跟要檢出的程式碼專案
即使用者名稱密碼存在目錄為:/root/.subversion/servers
002:
yum install -y subversion svn checkout svn://192.168.183.3/myproject --username=user1
在002客戶端本地建立弄一個檔案,把這個檔案傳到服務端:
svn add ./fstab 新增到版本控制中心 svn commit -m "add file" 把檔案上傳到伺服器
此時服務端還沒有顯示
svn up up全稱update,同步,把當前目錄下的檔案都更新到最新版
系統會記錄曾經使用的使用者名稱密碼,如果不想記錄密碼,把/root/.subversion/auth/svn.simple目錄下的隨機檔案刪除8caedf9bc22e731ce02c3e821d227594
刪除檔案
svn delete fstab 在伺服器上刪除 svn commit -m "delete fstab" 刪除完成需要提交
001:
002:
在002上 svn up 同步
svn log //檢視變更日誌
四、客戶端上使用svn(windows)
官網 https://tortoisesvn.net/index.zh.html
下載TortoiseSVN 並安裝
使用教程 http://www.jians