service:subversion:svn_server_for_linux
SVN Server for Linux
安裝
- Install svn
install subversion rpm
- 建立資料庫
svnadmin create /var/lib/svn chmod 2775 /home/svn
- 設定 /etc/service
svnserve 3690/tcp # Subversion svnserve svnserve 3690/udp # Subversion svnserve
- 設定 inetd
service svnserve { disable = no socket_type = stream protocol = tcp wait = no user = svn server = /usr/bin/svnserve server_args = -i -r /var/lib/svn } service xinetd restart
透過 Httpd 協定使用 SVN
- Install httpd module
install mod_dav_svn rpm
- 設定 inetd
修改 user = apache
- 修改檔案權限
chown apache.apache -R /var/lib/svn
- 增加 /etc/httpd/conf.d/subversion.conf
LoadModule dav_sn_module modules/mod_dav_svn.so LoadModule authz_svn_module modules/mod_authz_svn.so <Location /svn> DAV svn SVNPath /var/lib/svn <LimitExcept GET PROPFIND OPTIONS REPORT> AuthType Basic AuthNmae "SVN Authorization " AuthUserFile /etc/svn/.htpasswd Require valid-user </LimitExcept> </Locateion>
- 重新啟動 httpd
service httpd restart
透過 SSH 協定使用 SVN
- 修改 /home/svn/conf/svnserv.conf
anon-access = none auth-access = write
- 參數說明
anon-access 任何人都可以存取 auth-access 透過SSH認證存取 none 表示無法讀取 read 表示只能讀取 write 可寫入/讀取
SVN 指令
- 先設定環境變數 SVN_EDITOR=vi
- 管理者指令
- svnadmin create /var/lib/svn
建立 svn 資料庫
- 客戶端指令
- svn import foo svn:sss.vvv.nnn/var/lib/svn/foo
建立一個新的專案 * svn co svn:sss.vvv.nnn/var/lib/svn/foo
下載一個專案 - svn commit –message “modify foo.html” test/foo.html
- svn ci test/xxx.html
更新 xxx.html 至 SVN - svn status -vq
檢視 SVN 狀態 - svn diff
檢視 SVN 版本差異處 - svnlook log /var/lib/svn
檢視 Log - svn log foo.html
檢視 foo.html Log - svn diff –revision 1:3 foo.html
比較第一版和第三版 foo.html 差異性 - svn cat –revision 2 foo.html
檢視第二版本 foo.html - svn log –revision 2 foo.html
檢視第二版本 foo.html 修改紀錄 - svn update –revision 1 foo.html
恢復第一版本 foo.html
Win32 Clinet
Win32上可以安裝 Tortoisesvn 此程式, 這是用來存取 SVN 的 Clinet軟體
安裝 Tortoisesvn
下載點: http://tortoisesvn.tigris.org/
Tortoisesvn 可以透過 http, svn, svn+ssh 協定來存取 SVN , 不過使用 svn+ssh 需要安裝 ssh clinet 套件
安裝 plink
下載點: http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html
plink 只是一個程式, 無須安裝. 在 Tortoisesvn 中 SSH Clinet 指定 plink 位置, 並且加上參數
plink -l usernaem -pw password
指定之後, 就可以使用 svn+ssh 協定存取 SVN
service/subversion/svn_server_for_linux.txt · 上一次變更: 2019/11/16 08:12 由 127.0.0.1