Centos6.5安裝subversion使用svn版本庫

來源:互聯網
上載者:User

Centos6.5安裝subversion使用svn版本庫
1、下載、解壓subversion:

cd ~ wget http://apache.fayea.com/subversion/subversion-1.9.3.tar.gztar zxvf subversion-1.9.3.tar.gz
2、安裝subversion需要sqlite的支援,所以先下載sqlite:
wget http://www.sqlite.org/snapshot/sqlite-amalgamation-201511301915.zipunzip sqlite-amalgamation-201511301915.zip -d ~/sqlite-amalgamationmv ~/sqlite-amalgamation ~/subversion-1.9.3cd subversion-1.9.3
3、編譯、安裝subversion:
./configure --prefix=/usr/local/subversion -with-apxs=/usr/local/apache2/bin/apxs --with-apr=/usr/local/apr --with-apr-util=/root/apr-util-1.5.4/ --with-zlibmake && make install
4、將svn的操作命令放至 /usr/bin下:
ln -f -s /usr/local/subversion/bin/svn* /usr/bin

使用svnserve --version來查看subversion的版本,如果顯示的是1.9.3表示安裝成功

5、為了方便以後操作,把svn的安裝目錄加入到環境變數:

/etc/profile結尾加上svn的環境變數:

echo -e 'export PATH=/usr/local/subversion/bin:$PATH\n' >> /etc/profile && source /etc/profile
6、安裝成功,建立版本庫:
mkdir -p /svn/repos  #建立版本庫目錄,repos目錄名可以自訂svnadmin create /svn/repos #建立版本
7、修改版本庫控制:

編輯/svn/repos/conf/svnserve.conf,內容修改為:

[general]anon-access = noneauth-access = writepassword-db = passwd  #使用者密碼檔案authz-db = authz  #授權登入檔案

PS.所有代碼前面不能用別的字元,空格也不可以。

8、添加版本庫訪問的使用者:

編輯/svn/repos/conf/authz,添加group和使用者:

[groups]admin = test[/]@admin = rw### 注意:### * 許可權設定檔中出現的使用者名稱必須已在使用者設定檔中定義。### * 對許可權設定檔的修改立即生效,不必重啟svn。### 使用者組格式:### [groups]### = ,### 其中,1個使用者組可以包含1個或多個使用者,使用者間以逗號分隔。### 版本庫目錄格式:### [<版本庫>:/項目/目錄]### @<使用者組名> = <許可權>### <使用者名稱> = <許可權>### 其中,方框號內部分可以有多種寫法:### [/],表示根目錄及以下,根目錄是svnserve啟動時指定的,我們指定為/home/svndata,[/]就是表示對全部版本庫設定許可權。### [repos:/] 表示對版本庫repos設定許可權;### [repos:/abc] 表示對版本庫repos中的abc項目設定許可權;### [repos:/abc/aaa] 表示對版本庫repos中的abc項目的aaa目錄設定許可權;### 許可權主體可以是使用者組、使用者或*,使用者組在前面加@,*表示全部使用者。### 許可權可以是w、r、wr和空,空表示沒有任何許可權。
9、添加使用者對應的密碼:

編輯/svn/repos/conf/passwd,設定使用者的密碼:

[users]test = test

這樣,就設定了一個使用者名稱和密碼都是test的具有讀寫權限的賬戶。

10、啟動SVN:
/usr/local/subversion/bin/svnserve -d --listen-port 8888 -r /svn###-d :表示以daemon方式(後台運行)運行;###--listen-port 9999 :表示使用9999連接埠,可以換成你需要的連接埠。但注意,使用1024以下的連接埠需要root許可權;###-r /home/svndata :指定根目錄是/svn
11、將SVN添加到開機啟動:
echo -e '/usr/local/subversion/bin/svnserve -d --listen-port 8888 -r /svn\n' >> /etc/rc.local

如果想要停止SVN,可用以下命令:

killall svnserve

用戶端使用svn匯出、上傳這些就不在此記錄了,如果需要將別的svn版本庫匯入到新的svn版本庫中,需要進行如下操作:

2.1、將需要移動的版本庫完整地匯出為一個單獨檔案:
svnadmin dump local_old_repositories_path > dumpfile_path

PS.匯出來的檔案是二進位格式,一般的非二進位處理方式的文檔編輯器開啟、儲存後,會破壞格式,導致後續匯入時某些提交校正出錯。如果僅是完整移動版本庫,則不需要編輯dump檔案,直接在後面load匯入即可。但是想修改其中的欄位,建議使用WinHex以16進位方式編輯。

2.2、重新建立一個新的版本庫:
svnadmin create new_repositories_path
2.3、將之前的dump檔案匯入到新的版本庫:
svnadmin load new_repositories_path < dumpfile_path
2.4、其他動作
svndumpfilter
該命令用於過濾dump檔案中的某些檔案夾,以得到所需要的工程檔案。在我們目前的版本庫中還不需要這個操作。經以上操作,已將舊版本庫匯入到新版本庫的目錄下。經對比驗證,新庫跟舊版本庫工程內容完全一致,操作成功!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.