?????? linux下subversion+apache的配置我在網上看過很多關于subversion配置的blog,但是按照其
上操作并不能成功配置,也講的不是很清楚。在此向大家推薦《使用Subversion進行版本控制》一書,網上有中文電子檔,該書對subversion有很詳細的介紹,感興趣的朋友可以去看一下。這里我只介紹subversion基本使用方法,以及和apache的結合。
?????? 1.基本使用方法
apache怎么配置?????????svn 命令行客戶端程序
????????svnversion 此工具用來顯示工作拷貝的狀態
????????svnlook 直接查看subversion版本庫的工具
????????svnadmin 建立,調整和修復subversion版本庫的工具
apachemaven安裝與配置、????????svndumpfilter 過濾subversion版本庫轉儲數據流的工具
????????svnserver 一個單獨的服務器程序,可以作為守護進程或由ssh調用,這是另一種使版本庫可以通過網絡訪問的方式
????????svnsync 一個通過網絡增量鏡像版本庫的程序
????????svnadmin create /mnt/websvn #創建版本庫websvn
apache修改conf配置文件?????????svn import myfile file:///mnt/websvn/hello #將末版本化文件導入版本庫的最快方法,會跟據需要創建中介目錄
????????svn list file:///mnt/websvn/hello #列出版本庫中的文件
????????
????????svn checkout file:///mnt/websvn/hello #將版本庫中的最新版本文件存儲在本地,執行后本地會生成一個hello文件夾(也叫工作拷貝),-r +版本號,可以取出指定版本號的工作拷貝,eg:svn
checkout -r 4 file:///mnt/websvn/hello
????????
????????svn checkout file:///mnt/websvn/hello /tmp/hello ????#將版本庫中的最新版本文件存儲在本地指定的地方
????????svn update #更新你的工作拷貝與最新的版本同步svn add/delete/copy/move #作出修改
????????svn status/diff (-v) #檢驗修改
????????????A 表示預定加入到版本庫的文件,目錄或符號鏈
????????????C 表示文件發生沖突,在從服務器更新時與本地版本發生交迭
????????????D 表示文件,目錄或是符號鏈從版本庫中刪除
????????????M 表示文件內容被修改了
????????svn revert file #取消對file的一些修改
????????svn commit -m "txt" ????#提交你的更改到版本庫,當你提交修改時,你需要提供一些描述修改的一些日志信息,你的信息會附到這個修訂版本上,-m選項就是用來提供這種信息
????????svn log ????#提供你一條記錄,包括:誰對文件,目錄做了修改,哪些修訂版本做了修改,修訂版本的日期和時間,還有你當時提供的日志信息
##########以上為svn的常用命令行操令#############
##########一下為svn+apache的配置##############
1.安裝軟件
????yum install subversion mod_dav_svn httpd -y
2.配置apache
????cd /etc/httpd/conf.d/
????vim subversion.conf
????? ? LoadModule dav_svn_module ? ? /etc/httpd/modules/mod_dav_svn.so
????? ? LoadModule authz_svn_module ? /etc/httpd/modules/mod_authz_svn.so????
???????? <Location /svn> #apache代理所有url路徑部分為/svn的請求到svn的提供者DAV
? ????????DAV svn
? ????????SVNPath /mnt/hello/websvn?????? #注意路徑
? ? ? ????AuthType Basic
? ? ? ????AuthName "Authorization Realm"
? ? ? ????AuthUserFile "/etc/httpd/conf.d/authsvn" #基于httpd認證
? ? ? ????Require valid-user
????????</Location>
???? ? ???
htpasswd -cm /etc/httpd/conf.d/authsvn test (輸入2次密碼) #生成認證文件
3.配置subversion
???? mkdir dir;cd dir
?????touch file{1,2,3}{a,b,c}
?????svnadmin create /mnt/hello/websvn
?????svn import dir file:///mnt/hello/websvn/qwg
?????svn list file:///mnt/hello/websvn/qwg
???? svn status -v
?????cd /mnt/hello/websvn/conf/
?????vi svnserver.conf
????????SVNPath /mnt/hello/websvn/qwg
????????anon-access = read
????????auth-access = write
????????password-db = passwd
????????authz-db = authz
???????? realm = websvn
?????vi passwd
???????? test = westos (用戶名=test,密碼=westos,和htpasswd執行的密碼相同)
?????vi authz
????????admin = test
????????[/]
??????? admin = rw
????????* = r
????
4./etc/init.d/httpd start
?? /etc/init.d/svnserver start
訪問http://127.0.0.1/svn即可看見版本庫的文件
????
以上只列出了subversion的一些簡單用法和配置方法,想要深入理解subversion的使用和配置方法,請參照推薦書籍,有什么錯誤歡迎大家指出