Linux System Environment
成都創(chuàng)新互聯-專業(yè)網站定制、快速模板網站建設、高性價比張家界網站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式張家界網站制作公司更省心,省錢,快速模板網站建設找我們,業(yè)務覆蓋張家界地區(qū)。費用合理售后完善,十多年實體公司更值得信賴。
一、配置阿里云yum源和epel源
提示: 阿里云yum源官網
二、yum安裝SVN軟件
三、創(chuàng)建SVN版本庫目錄
提示: 自定義此目錄為版本庫目錄,為后面創(chuàng)建版本庫提供存位置
四、創(chuàng)建SVN版本庫
五、創(chuàng)建用戶并設置用戶權限
六、配置SVN服務器配置文件
提示: 每一項目參數前面都不要留空格,否則會報錯
七、關閉防火墻及SElinux
提示: 防火墻可以不關閉,放行SVN端口(SVN默認端口3690)
八、啟動SVN服務
九、測試SVN客戶端訪問SVN服務
1、Windows使用TortoiseSVN 客戶端測試
輸入 svn://192.168.201.56:3690/xiaoming (xiaoming是自定義的版本庫名稱)
2、Linux SVN客戶端操作命令
阿里云搭建SVN服務器
1:安裝svn
apt-get install subversion
2. 開啟svn服務器
svnserve -d
檢查是否開啟:ps aux | grep svnserve
若出現如下內容:
wkr 6537 0.0 0.0 13784 956 ? Ss 16:18 0:00 svnserve -d
wkr 7593 0.0 0.0 5784 864 pts/0 S+ 21:57 0:00 grep –color=auto svnserve
表示服務已開啟。(注意:一定要有第1行,只有第2行說明服務未啟動)
停止svn服務: ?killall svnserve
3. 建立倉庫
svnadmin create /home/svnrepos
理論上,倉庫可以建立在任何目錄中。
注意:重啟svnserve ?執(zhí)行 svnserve -d ?-r /home
這樣在eclipse客戶端把工程導入svn的時候 url需要填寫
svn://ip/svnrepos/project_name
如果啟動的時候帶如下參數:svnserve -d ?-r??/home/svnrepos
客戶端:svn://ip/project_name ?這樣子會報錯。驗證失敗
4. 修改配置文件
編輯 svnserve.conf
vi /home/svnrepos/conf/svnserve.conf
把anon-access = read 改為 none,auth_access = write
password-db = passwd ?authz-db = authz?的注釋去掉,還有[general]的注釋也要去掉(這個默認沒有注釋)。
注:當你去掉注釋的時候,不要簡單的把前面的#去掉,要把前面的空格一塊去掉,不然在Eclipse中使用的時候會出現配置文件格式錯誤的問題。
注意:如果authz-db = authz 這個注釋掉了,則不需要配置/home/svnrepos/conf/authz
5. 修改帳戶文件
vi ?/home/svnrepos/conf/passwd
### This file is an example password file for svnserve.
### Its format is similar to that of svnserve.conf. As shown in the
### example below it contains one section labelled [users].
### The name and password for each user follow, one account per line.
[users]
# harry = harryssecret
# sally = sallyssecret
user1 = pass1? # 輸入你定義的用戶名和密碼,密碼顯然沒有加密
6. 修改授權文件
gedit /home/svnrepos/conf/authz
修改或者輸入下面2行:
[svnrepos:/] ? ? ?##格式為 ? ?版本庫名稱 ?+ :/
user1 = rw
其中,repos1是倉庫名稱,user1是用戶名,rw代表讀寫。
7.客戶端連接
svn co svn://ip/oplinux
用戶名密碼:rsync
8.實現SVN與WEB同步,可以CO一個出來,也可以直接配在倉庫中
1)設置WEB服務器根目錄為/alidata/www/webroot
2)checkout一份SVN
svn co svn://localhost/alidata/www/svndata/myproject /alidata/www/webroot
修改權限為WEB用戶
chown -R www:www /alidata/www/webroot/myproject
3)建立同步腳本
cd /alidata/www/svndata/oplinux/hooks/
cp post-commit.tmpl post-commit
編輯post-commit,在文件最后添加以下內容
export LANG=en_US.UTF-8
SVN=/usr/bin/svn
WEB=/alidata/www/webroot/
$SVN update $WEB –username myname –password myname
chown -R www:www $WEB
增加腳本執(zhí)行權限
chmod +x post-commit
這樣,我們上傳svn后,生產站點就能立馬顯示出來了,自動化程度高了很多。
1、下載綠色版svn(即zip壓縮包文件,如我下的是svn-win32-1.5.6.zip,當然下安裝版的也可以):
2、解壓下載下來的綠色版svn和安裝svn的windows客戶端TortoiseSVN,按照提示安裝就可以,為了能立馬看到效果,最好重啟下機器,呵呵
3、創(chuàng)建版本庫,打開命令窗口(開始-運行,鍵入cmd,回車),我的svn服務器解壓目錄為F:\svn;在命令窗口輸入:
pushd F:\svn\bin
進入到svn解壓目錄下的bin目錄,建立版本庫,如我把版本庫安裝在:F:\svnrep,首先確認F盤下是否存在svnrep文件夾,沒有我們可以在命令窗口鍵入:
mkdir F:\svnrep
就會創(chuàng)建一個snvrep文件夾,接下來,運行如下命令:
svnadmin create F:\svnrep
這樣我們的版本庫就創(chuàng)建了,在F:\svnrep下你可以看到自動生成了一些文件及文件夾;同時,你也可以用TortoiseSVN的圖形界面來創(chuàng)建,在F:\svnrep文件夾中“右擊-TortoiseSVN-Create Repository here”, 同樣得到我們需要的結果,如果這文件夾已經創(chuàng)建有了,你再創(chuàng)建,會自動報錯。
4、配置用戶和權限,打開F:\svnrep\conf目錄中的svnserve.conf文件,將[general](保證[general]這一行的前面不帶#號,有#號就將#號去掉)下面的
# password-db = passwd(大概在20行)及# authz-db = authz(大概在27行)
前的#號去掉。保存文件;
然后打開同目錄中的passwd文件(可以用記事本打開),在[users](保證[users]這一行的前面不帶#號,有#號就將#號去掉)下面添加用戶及此用戶對應的密碼,格式為:
admin = password
表示用戶為admin 密碼為password 保存文件。
同時也可以修改同目錄下的authz文件,主要是用來控制用戶對svn版本庫里哪些目錄的文件是否有讀或寫權限,讀為r寫為w,如果要賦給admin對版本庫下的目錄都有讀和寫權限,格式為:
[/]
admin = rw
/代表了svn版本庫下的起始位置,對于修改此文件的一些注意事項,可以到網上搜索下呵呵。
5、運行svn服務器,在命令窗口輸入:
svnserve -d -r F:\svnrep
這樣,svn服務器程序就啟動了。但不要關閉這個命令窗口,關閉就意味著svn服務器停止。
6、導入項目到svn版本庫可以用TortoiseSVN客戶端進行導入,在要導入的項目文件夾上“右擊-TortoiseSVN-Import…”在URL of repository輸入
svn://localhost/項目名
在Import Message中可以輸入你的信息,點擊ok按鈕,就開始導入了,完成導入后,項目目錄沒有任何變化,導入過程中沒報錯的話,項目中的所有文件就導入到svn的版本庫里了;這個導入過程可以到任何一臺能訪問你svn服務器并安裝好TortoiseSVN客戶端的電腦上進行,在要導入的文件或文件夾上“右擊右擊-TortoiseSVN-Import…”,在URL of repository 輸入:
svn://svn服務器IP/項目名
就OK
7、從版本庫中檢出,即復制出一份版本庫中的項目,在一個空的文件夾中“右擊-SVN Checkout”,在URL of repository中輸入:
svn://localhost/項目名
這樣我們就復制出了這個項目中的文件。
8、修改文件后更新到版本庫,當項目中的某一文件作了修改,可以通過在這個文件上“右擊-SVN Commit…”,這樣我們就將我們對這一文件的修改提交到了版本庫。
當然還有很多功能,查看文件修改,比較文件各版本中的修改及不同處,== 不一一介紹了。注意的是TortoiseSVN客戶端版本最好是和svn服務器的版本一致,有時不一致的時候會發(fā)生錯誤。推薦小鳥云,這些都是小鳥云工程師告訴我的