1. 程式人生 > >Linux下安裝svn教程

Linux下安裝svn教程

### 前言 最近買了新伺服器,準備開始弄一些個人的開源專案。有了伺服器當然是搞一波svn啦。方便自己的資料上傳和下載。於是在此記錄搭建svn的方式,方便以後直接使用。 ### 安裝 使用yum源進行安裝,十分的方便。 ``` yum install subversion ``` ### 配置svn #### 建立倉庫 我們這裡在/home下建立一個名為svn的倉庫(repository),以後所有程式碼都放在這個下面,建立成功後在svn下面多了幾個資料夾。 ``` [root@localhost /]# cd /home [root@localhost home]# mkdir svn [root@localhost home]# svnadmin create /home/svn [root@localhost home]# ls svn conf db format hooks locks README.txt ``` 我們這裡特別關注一下conf資料夾,這個是存放配置檔案的。 ``` [root@localhost home]# cd svn/conf [root@localhost conf]# ls authz passwd svnserve.conf ``` 其中: authz 是許可權控制檔案 passwd 是帳號密碼檔案 svnserve.conf 是SVN服務配置檔案 #### 配置passwd ``` [root@localhost conf]# vi passwd [users] jichi=123456 ``` 上面的例子中我們建立了1個使用者jichi。 #### 配置authz ``` [root@localhost conf]# vi authz [/] jichi=rw *= ``` 上面配置的含義是,jichi對/home/svn/下所有檔案具有可讀可寫許可權,除此之外,其它使用者均無任何許可權,最後一行*=很重要不能少。 #### 使用使用者分組 ``` [root@localhost conf]# vi authz [groups] group1 = jichi group2 = jichi1 [/] @group1 = rw @group2 = r * = ``` 上面配置中建立了2個分組,分組1的使用者可讀可寫,分組2的使用者只讀。 #### 配置svnserve.conf ``` [root@localhost conf]# vi svnserve.conf 開啟下面的5個註釋 anon-access = read #匿名使用者可讀 auth-access = write #授權使用者可寫 password-db = passwd #使用哪個檔案作為賬號檔案 authz-db = authz #使用哪個檔案作為許可權檔案 realm = /home/svn # 認證空間名,版本庫所在目錄 ``` 最後一行的realm記得改成你的svn目錄 ![](https://img2020.cnblogs.com/blog/1534147/202101/1534147-20210113215122435-1854979221.png) ### 啟動與停止 ``` [root@localhost conf]# svnserve -d -r /home/svn(啟動) [root@localhost conf]#killall svnserve(停止) ``` 上述啟動命令中,-d表示守護程序, -r 表示在後臺執行。停止還可以採用殺死程序的方式: ``` [root@localhost conf]# ps -ef|grep svnserve root 4908 1 0 21:32 ? 00:00:00 svnserve -d -r /home/svn root 4949 4822 0 22:05 pts/0 00:00:00 grep svnserve [root@localhost conf]# kill -9 4908 ``` ### 客戶端連線 這裡使用TortoiseSVN,輸入地址svn://你的IP 即可,不出意外輸入使用者名稱和密碼就能連線成功了。 預設埠3690,如果你修改了埠,那麼要記得加上埠號。 ### yum的安裝路徑 ``` # rpm -qa | grep subversion subversion-1.6.11-15.el6_7.x86_64 # rpm -ql subversion-1.6.11-15.el6_7.x86_64 ... /usr/share/doc/subversion-1.6.11 /usr/share/doc/subversion-1.6.11/BUGS /usr/share/doc/subversion-1.6.11/CHANGES ``` rpm -qa 查詢所有安裝的rpm包,可以配合grep命令。 rpm -qi 查詢某個具體包的介紹。 rpm -ql 列出某個具體包的所有檔案 rpm幾個預設安裝路徑: ``` /etc 一些設定檔案放置的目錄 /usr/bin 一些可執行檔案 /usr/lib64 一些程式使用的動態函式庫 /usr/share/doc 一些基本的軟體使用手冊與幫助文件 /usr/share/man 一些man page