進入公司,發現公司開發員工每個人用svn客戶端工具鏈結svn,都具有管理許可權,所有目錄都可以看見,這樣很容易造成誤操作。
後來跟開發人員商量了一下,重新部署svn伺服器
yum源的svn包版本1.6,官方最新原始碼版本1.9.2
1.原始碼安裝 svn(subversion)
下面是個人寫了個指令碼
#!/bin/bash
dir=/usr/local/src
yum -y install gcc gcc-c++ make openssl libtool
cd $dir
subversion-1.9.2.tar.gz
apr-1.5.2.tar.gz
svn/apr-util-1.5.4.tar.gz
sqlite-amalgamation-3090200.zip
zlib-1.2.8.tar.gz
tar -zxvf apr-1.5.2.tar.gz
tar -zxvf apr-util-1.5.4.tar.gz
unzip sqlite-amalgamation-3090200.zip
tar -zxvf subversion-1.9.2.tar.gz
tar -zxvf zlib-1.2.8.tar.gz
cd $dir/apr-1.5.2
./configure --prefix=/usr/local/apr
make && make install
cd $dir/cd apr-util-1.5.4
./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
make && make install
cd $dir/cd zlib-1.2.8
./configure
make && make install
cd $dir
mv sqlite-amalgamation-3090200 subversion-1.9.2/sqlite-amalgamation
cd $dir/subversion-1.9.2
./configure --prefix=/data/svn --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
make && make install
已經安裝好
2.建立svn版本庫
svnadmin create /home/svn_data/部門名稱(好分辨) 這裡可以建立多個(我分別建立了android,ios,chanpin)
cp /home/svn_data/android/conf/authz passwd /home/svn_data
從其中乙個版本庫中將authz passwd拷貝到根目錄下/home/svn_data 方便管理多個版本庫,
3.編輯每個版本庫的配置檔案
vim /home/svn_data/android/conf/svnserver.conf
[general]
anon-access = none匿名使用者許可權
auth-access = write認證使用者許可權
password-db = /home/svn_data/passwd指定用根目錄下的使用者配置檔案
authz-db = /home/svn_data/authz指定用根目錄下的版本庫許可權分配檔案
realm = android登陸的提示資訊
[sasl]
儲存退出
4.配置使用者賬戶密碼和版本庫許可權分配
vim /home/svn_data/passwd
使用者名稱 = 密碼
test1 = 123
test2 = 123
test3 = 123
vim /home/svn_data/authz
admin = test1,test2組分配,test1 test2屬於admin使用者組
admin1 = test3
[android:/] 版本庫名稱根目錄
@admin = rwadmin組使用者可讀寫
可以寫多個,根據自己公司的需求,
5.開啟svn服務
svnserver -d -r /home/svn_data 指定目錄為svn根目錄,
可以通過svn客戶端測試使用
6.在cent os 伺服器上做checkout 來同步上傳的**
svn co svn://localhost/android /home/svn_checkout 可做定時任務,現在/home/svn_checkout目錄下面就會出現開發人員上傳的**(不在本地做checkout,是看不見**的)
7.擴充套件,對版本庫下級目錄做許可權分配
通過客戶端,在android下面建立個android1的目錄,只想test1使用者訪問,其他人不允許訪問
編輯authz配置檔案
vim /home/svn_data/authz
[android:/android1]
@admin1 = rw 這樣就可以了, 訪問的路徑就是svn co svn://localhost/android/android1
以此類推, 可以建立很多目錄,並對每個目錄做許可權分配。
遇到登陸問題,如何換登陸使用者,(清空全部認證資料,在登陸就會提示輸入使用者密碼,供測試使用)
下面提供下,svn備份和遷移
svnadmin hotcopy 版本路徑 備份路徑
例如——
svnadmin hotcopy /data/svn_data/ios /data/back/ios
遷移——
將備份的目錄,進行壓縮,同步到需要遷移的機器,解壓即可,使用svnserver -d -r 目錄 啟動
centos svn伺服器與客戶端的搭建
1 yum install subversion.i686 2 建立倉庫 建立版本庫目錄 mkdir p home svndata lvmaque svn 建立版本庫 svnadmin create home svndata lvmaque svn 結果 paste image.png 3 進入co...
伺服器搭建
問題一 com無法訪問到伺服器 問題二 將 com 301重定向到 www.com 解決方案 在httpd.conf檔案中 追加 如下內容 options followsymlinks rewriteengine on rewritecond com rewriterule l,r 301 2 禁止...
搭建伺服器
零基礎搭建伺服器 我用的是ubuntu,所有 sudo apt get install apache2 配置php的時候已經配好了,這裡就不重複配置了 安裝apxs 安裝過php,所以這個也忽略掉 sudo apt get install apache2 dev apxs是乙個為apache超文字傳...