文件管理的艺术之SVN从零搭建
生活随笔
收集整理的這篇文章主要介紹了
文件管理的艺术之SVN从零搭建
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
一直以來對SVN(subversion)的認識只停留在簡單的概念上,至于到底是做什么用的、怎么用還是比較茫然,偶然的機會要為公司分部門搭建SVN,這才從頭到尾的理清了一遍SVN這神奇的軟件。在這里寫下我的操作過程留作記錄,同時也與大家一起分享。 對于SVN的介紹大家可以參考網上,他的確是一款不錯的文件版本管理軟件,對于從事開發(fā)工作的人來說更是一款不錯的利器,大家可以規(guī)律的操作同一個文件,而不用擔心文件管理混亂的問題。本為主要講述Linux系統(tǒng)下的SVN環(huán)境搭建,由于大家經常使用SVN客戶端訪問服務器端,所以我們要配合apache來使用。 一、準本工作 ? 以下是需要的軟件包以及下載地址。 apr-1.4.5.tar.gz?? http://apr.apache.org/download.cgi
apr-util-1.3.12.tar.gz?? http://apr.apache.org/download.cgi
httpd-2.2.19.tar.gz?? http://httpd.apache.org/download.cgi
subversion-1.6.17.tar.gz?? http://subversion.tigris.org/downloads/subversion-1.6.17.tar.gz
subversion-deps-1.6.17.tar.gz?? http://subversion.tigris.org/downloads/subversion-deps-1.6.17.tar.gz
libxml2-devel(SVN編譯解釋環(huán)境)?? 本地光盤自帶
openssl-devel(SSL加密所需環(huán)境)?? 本地光盤自帶
expat(解析XML開發(fā)庫)?? 本地光盤自帶 二、安裝部署 ? 準備好應有的軟件后就可以進行安裝部署了,下面對每一個安裝進行說明。 1、apr arp(Apache Portable Runtime)大家可以理解為一個可移至的運行庫,相當于給底層的SVN提供API接口,其實這個安裝包在subversion-deps里面有,但是由于版本直接的依賴關系我們還是下載最新版本的進行另外安裝,否則會出現(xiàn)意外的報錯。 tar zxf apr-1.4.5.tar.gz
cd apr-1.4.5
./configure?? //默認的安裝位置為 /usr/local/apr
make
make install 2、apr-util 簡單的幾步就完成了apr的安裝,apr-util也同樣是所依賴的庫文件,安裝方法如下。 tar zxf apr-util-1.3.12.tar.gz
cd apr-util-1.3.12
./configure –with-apr=/usr/local/apr?? //指定apr的安裝目錄
make
make install 3、httpd apache的編譯安裝相信大家已經非常常見了,這里不做過多的解釋,只不過是需要加上一些編譯參數(shù),將我們安裝的apr指定進去即可。 tar zxf httpd-2.2.19.tar.gz
cd httpd-2.2.19
./configure –prefix=/usr/local/apache2 –with-apr=/usr/local/apr/bin/apr-1-config –with-apr-util=/usr/local/apr/bin/apu-1-config –enable-modules=so –enable-dav –enable-maintainer-mode –enable-rewrite
make
make install 4、libxml2-devel 從網上查找資料后發(fā)現(xiàn)這個開發(fā)包是SVN使用過程中的一種匯編語言,如果不安裝的話SVN編譯是不通過的,大家可以從本地的系統(tǒng)光盤中使用rpm包進行安裝,如果有依賴關系可以使用yum的方式安裝。當然前提是本地沒有這個軟件包,可以使用rpm -qa查看一下。 yum install libxml2-devel 5、openssl-devel 這個相信大家一看就明白了,一般在帶有ssl參數(shù)編譯的源碼包中,openssl是不可缺少的環(huán)境,首先用rpm-qa查看軟件是否安裝,這里推薦大家使用yum方式安裝openssl-devel,因為有多個包之間有依賴關系。 yum install openssl-devel 6、expat 這個軟件包也是和XML環(huán)境有關系,非常有意思,如果不安裝的話在subversion最后的make install過程中會報錯,同樣大家可以從本地的光盤中找到該軟件包。 yum install expat 7、subversion && subversion-deps 忙碌了半天終于準備好SVN的安裝環(huán)境了,這里為什么要把兩個安裝包放在一起呢,因為deps是subversion所需的依賴環(huán)境,安裝過程也十分簡單。 tar zxf subversion-1.6.17.tar.gz
tar zxf subversion-deps-1.6.17.tar.gz
cd cd subversion-1.6.17
rm -fr apr*?? //因為我們在前面已經另外編譯過apr,所以這里刪除掉
./configure –prefix=/usr/local/svn –with-apxs=/usr/local/apache2/bin/apxs –with-apr=/usr/local/apr/bin/apr-1-config –with-apr-util=/usr/local/apr/bin/apu-1-config –with-ssl –enable-maintainer-mode
make
make install 三、SVN簡單管理 ? 按照上面的步驟如果沒有看到error報錯的話說明安裝已經成功了,下面主要介紹一下SVN簡單的使用與管理,更加詳細的說明請大家參考其他文章,因為對于SVN的使用有很多介紹。 1、創(chuàng)建版本倉庫 mkdir -p /svn/object/test?? //這里我要把test目錄作為SVN的版本庫
cd /usr/local/svn/bin/
./svnadmin create /svn/object/test?? //創(chuàng)建版本倉庫 ? 2、修改apache配置文件,在httpd.conf最后加入如下語句,并且將User/Group那里改成apache,如果沒有這個用戶請手動創(chuàng)建。 <Location /svn>?? //指定SVN的訪問路徑
DAV svn?? //指定哪一個模塊是相應處理SVN請求
SVNListParentPath? on?? //列出所有版本庫
SVNParentPath? /svn/object/?? //SVN根的絕對路徑
AuthType? Basic?? //采用基本認證,使用用戶名/密碼
AuthName? “Subversion repositories”?? //彈出認證信息對話框的描述內容
AuthUserFile? /svn/object/passwd?? //指定認證的密碼文件
AuthzSVNAccessFile? /svn/object/authz?? //指定SVN訪問的規(guī)則文件
Require? valid-user?? //指定只有輸入正確的用戶密碼才可以訪問版本庫
</Location> 3、配置passwd文件,在經過上面的配置后使用瀏覽器訪問地址 http://服務器IP/svn/test 看到有認證信息說明配置是成功的,下面就要為SVN指定哪些用戶可以訪問我們的內容,這里用戶名我們假定為admin1與admin2。 cd /usr/local/apache2/bin
./htpasswd -c /svn/object/passwd admin1?? //這里-c只在第一次創(chuàng)建使用
./htpasswd /svn/object/passwd admin2?? //輸入密碼即可完成用戶密碼創(chuàng)建 ? 4、只有passwd還不夠,需要配合authz文件的使用我們才可以正常訪問我們的SVN版本庫,authz文件需要我們手動創(chuàng)建,進入/svn/object目錄使用vi authz命令創(chuàng)建規(guī)則文件如下。 [groups]?? //設置用戶群組
mygroups=admin1,admin2 [test:/]?? //指定test版本庫的訪問權限
@mygroups=rw?? //mygroups里的成員對test庫有讀寫的權限 ? 5、啟動SVN,使用如下命令啟動SVN,我們的SVN版本庫就可以正常工作了。 /usr/local/svn/bin/svnserve -d -r /svn/object/test?? //-d指定后臺運行
可以將這句話加入到rc.local文件中讓其開機自動啟動 四、SVN客戶端測試 ? 在進行了一系列的設置后,SVN的搭建工作終于接近尾聲,接下來就是測試一下我們的SVN是否可用。 1、使用瀏覽器訪問 http://服務器IP/svn/test 輸入我們先前設置的用戶名與密碼后如果能開到“test – Revision 0: /”說明工作正常。 2、推薦大家使用SVN客戶端TortoiseSVN進行測試,使用客戶端可以完成SVN目錄映射到本地,以及文件創(chuàng)建、更改、上傳的操作,這里不做進一步演示,至此SVN環(huán)境搭建結束。 寫在最后 ? 看過很多篇文章后才總結出自己的思路,這里也希望大家能夠參考更多文章對SVN這個神奇的軟件能夠有自己的一些看法,以上只是本人對subversion粗淺的認識與整理,最后也希望能夠與大家一起討論其中的問題與不足。 原創(chuàng)文章首發(fā)自阿布的博客,轉載請注明,本文地址:http://www.abuve.com/419.html
apr-util-1.3.12.tar.gz?? http://apr.apache.org/download.cgi
httpd-2.2.19.tar.gz?? http://httpd.apache.org/download.cgi
subversion-1.6.17.tar.gz?? http://subversion.tigris.org/downloads/subversion-1.6.17.tar.gz
subversion-deps-1.6.17.tar.gz?? http://subversion.tigris.org/downloads/subversion-deps-1.6.17.tar.gz
libxml2-devel(SVN編譯解釋環(huán)境)?? 本地光盤自帶
openssl-devel(SSL加密所需環(huán)境)?? 本地光盤自帶
expat(解析XML開發(fā)庫)?? 本地光盤自帶 二、安裝部署 ? 準備好應有的軟件后就可以進行安裝部署了,下面對每一個安裝進行說明。 1、apr arp(Apache Portable Runtime)大家可以理解為一個可移至的運行庫,相當于給底層的SVN提供API接口,其實這個安裝包在subversion-deps里面有,但是由于版本直接的依賴關系我們還是下載最新版本的進行另外安裝,否則會出現(xiàn)意外的報錯。 tar zxf apr-1.4.5.tar.gz
cd apr-1.4.5
./configure?? //默認的安裝位置為 /usr/local/apr
make
make install 2、apr-util 簡單的幾步就完成了apr的安裝,apr-util也同樣是所依賴的庫文件,安裝方法如下。 tar zxf apr-util-1.3.12.tar.gz
cd apr-util-1.3.12
./configure –with-apr=/usr/local/apr?? //指定apr的安裝目錄
make
make install 3、httpd apache的編譯安裝相信大家已經非常常見了,這里不做過多的解釋,只不過是需要加上一些編譯參數(shù),將我們安裝的apr指定進去即可。 tar zxf httpd-2.2.19.tar.gz
cd httpd-2.2.19
./configure –prefix=/usr/local/apache2 –with-apr=/usr/local/apr/bin/apr-1-config –with-apr-util=/usr/local/apr/bin/apu-1-config –enable-modules=so –enable-dav –enable-maintainer-mode –enable-rewrite
make
make install 4、libxml2-devel 從網上查找資料后發(fā)現(xiàn)這個開發(fā)包是SVN使用過程中的一種匯編語言,如果不安裝的話SVN編譯是不通過的,大家可以從本地的系統(tǒng)光盤中使用rpm包進行安裝,如果有依賴關系可以使用yum的方式安裝。當然前提是本地沒有這個軟件包,可以使用rpm -qa查看一下。 yum install libxml2-devel 5、openssl-devel 這個相信大家一看就明白了,一般在帶有ssl參數(shù)編譯的源碼包中,openssl是不可缺少的環(huán)境,首先用rpm-qa查看軟件是否安裝,這里推薦大家使用yum方式安裝openssl-devel,因為有多個包之間有依賴關系。 yum install openssl-devel 6、expat 這個軟件包也是和XML環(huán)境有關系,非常有意思,如果不安裝的話在subversion最后的make install過程中會報錯,同樣大家可以從本地的光盤中找到該軟件包。 yum install expat 7、subversion && subversion-deps 忙碌了半天終于準備好SVN的安裝環(huán)境了,這里為什么要把兩個安裝包放在一起呢,因為deps是subversion所需的依賴環(huán)境,安裝過程也十分簡單。 tar zxf subversion-1.6.17.tar.gz
tar zxf subversion-deps-1.6.17.tar.gz
cd cd subversion-1.6.17
rm -fr apr*?? //因為我們在前面已經另外編譯過apr,所以這里刪除掉
./configure –prefix=/usr/local/svn –with-apxs=/usr/local/apache2/bin/apxs –with-apr=/usr/local/apr/bin/apr-1-config –with-apr-util=/usr/local/apr/bin/apu-1-config –with-ssl –enable-maintainer-mode
make
make install 三、SVN簡單管理 ? 按照上面的步驟如果沒有看到error報錯的話說明安裝已經成功了,下面主要介紹一下SVN簡單的使用與管理,更加詳細的說明請大家參考其他文章,因為對于SVN的使用有很多介紹。 1、創(chuàng)建版本倉庫 mkdir -p /svn/object/test?? //這里我要把test目錄作為SVN的版本庫
cd /usr/local/svn/bin/
./svnadmin create /svn/object/test?? //創(chuàng)建版本倉庫 ? 2、修改apache配置文件,在httpd.conf最后加入如下語句,并且將User/Group那里改成apache,如果沒有這個用戶請手動創(chuàng)建。 <Location /svn>?? //指定SVN的訪問路徑
DAV svn?? //指定哪一個模塊是相應處理SVN請求
SVNListParentPath? on?? //列出所有版本庫
SVNParentPath? /svn/object/?? //SVN根的絕對路徑
AuthType? Basic?? //采用基本認證,使用用戶名/密碼
AuthName? “Subversion repositories”?? //彈出認證信息對話框的描述內容
AuthUserFile? /svn/object/passwd?? //指定認證的密碼文件
AuthzSVNAccessFile? /svn/object/authz?? //指定SVN訪問的規(guī)則文件
Require? valid-user?? //指定只有輸入正確的用戶密碼才可以訪問版本庫
</Location> 3、配置passwd文件,在經過上面的配置后使用瀏覽器訪問地址 http://服務器IP/svn/test 看到有認證信息說明配置是成功的,下面就要為SVN指定哪些用戶可以訪問我們的內容,這里用戶名我們假定為admin1與admin2。 cd /usr/local/apache2/bin
./htpasswd -c /svn/object/passwd admin1?? //這里-c只在第一次創(chuàng)建使用
./htpasswd /svn/object/passwd admin2?? //輸入密碼即可完成用戶密碼創(chuàng)建 ? 4、只有passwd還不夠,需要配合authz文件的使用我們才可以正常訪問我們的SVN版本庫,authz文件需要我們手動創(chuàng)建,進入/svn/object目錄使用vi authz命令創(chuàng)建規(guī)則文件如下。 [groups]?? //設置用戶群組
mygroups=admin1,admin2 [test:/]?? //指定test版本庫的訪問權限
@mygroups=rw?? //mygroups里的成員對test庫有讀寫的權限 ? 5、啟動SVN,使用如下命令啟動SVN,我們的SVN版本庫就可以正常工作了。 /usr/local/svn/bin/svnserve -d -r /svn/object/test?? //-d指定后臺運行
可以將這句話加入到rc.local文件中讓其開機自動啟動 四、SVN客戶端測試 ? 在進行了一系列的設置后,SVN的搭建工作終于接近尾聲,接下來就是測試一下我們的SVN是否可用。 1、使用瀏覽器訪問 http://服務器IP/svn/test 輸入我們先前設置的用戶名與密碼后如果能開到“test – Revision 0: /”說明工作正常。 2、推薦大家使用SVN客戶端TortoiseSVN進行測試,使用客戶端可以完成SVN目錄映射到本地,以及文件創(chuàng)建、更改、上傳的操作,這里不做進一步演示,至此SVN環(huán)境搭建結束。 寫在最后 ? 看過很多篇文章后才總結出自己的思路,這里也希望大家能夠參考更多文章對SVN這個神奇的軟件能夠有自己的一些看法,以上只是本人對subversion粗淺的認識與整理,最后也希望能夠與大家一起討論其中的問題與不足。 原創(chuàng)文章首發(fā)自阿布的博客,轉載請注明,本文地址:http://www.abuve.com/419.html
轉載于:https://blog.51cto.com/abuve/695938
總結
以上是生活随笔為你收集整理的文件管理的艺术之SVN从零搭建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 从性能角度选购Adroid智能手机,双核
- 下一篇: 分享18个常用的网站性能测试工具