最近在和小夥伴組隊參加一個關於人工智能的比賽,無奈不知道怎麼處理好每一個人的代碼託管問題,因而找到了晚上免費svn託管服務器的服務,可是所給的免費空間實在過小了。原本咱們在學校的實驗室搭建了一個本地的服務器,可是隻能是內網登錄,考慮到一個小夥伴會在78月左右就出國留學,不是內網沒法登錄,並且那臺主機將用來搭建集羣。此時想到了我以前申請的騰訊雲服務器,遂在騰訊雲上基於centos7搭建了SVN。具體過程以下,若有不對,請你們指正!本人在CSDN上有博客http://blog.csdn.net/weixin_36394852,同步發佈~html
yum install subversion
linux
安裝完以後,能夠輸入:centos
svnserve -version
服務器
查看目前svn版本,查詢到即爲進入第二步svn
mkdir -p var/svn/fuck
人工智能
-p參數:加了系統將自動創建好那些尚不存在的目錄,即一次能夠創建多個目錄
centos7
svnadmin create /var/svn/fuck
.net
執行命令後,svn會在/var/svn/fuck生成以下文件:
3d
其中conf文件夾下有重要的文件爲如下幾個:版本控制
svnserve.conf //svn服務配置文件 authz //權限控制配置文件 passwd //用戶名口令文件
在[general]裏面把如下配置前的#號刪去並根據須要做出如下修改:
vi /var/svn/fuck/conf/senserve.conf
[general] //匿名訪問的權限,能夠是read、write、none,默認爲read,在此由於我要創建我團隊的私人版本庫,故我設置爲none anon-access=none //使受權用戶有寫權限,參數也是如上3個 auth-access=write //使用哪一個文件做爲帳號文件,在此指定在conf文件裏面的另一個文件passwd password-db=passwd //使用哪一個文件做爲權限文件,在此指定在conf文件裏面的另一個文件authz authz-db=authz //認證命名空間,說白了就是版本庫的所在目錄 realm=/var/svn/fuck
具體操做以下:
修改完以後按Esc鍵後,按Shift 連續按Z鍵進行保存(對liunx新手來講提醒一下)。
vi /var/svn/fuck/conf/authz
在[groups]中添加:
[groups] //用戶組 Fuck = kwongtai,dada //用戶組所對應的用戶 //由於只有一個版本庫,故使用[/] [/] //庫目錄權限 @admin = rw //用戶組權限 * = //非用戶組權限,這裏設置除了用戶組都對版本庫沒有任何權限
vi /var/svn/fuck/conf/passwd
svnserve -d -r /var/svn/fuck
使用ps aux | grep svn
查看是否已經啓動了svn
見到如紅色圈記那樣,就表明已經啓動成功.
輸入指令killall svncerve
再輸入ps aux | grep svn
殺死進程,能夠發現svnserve全部的進程已經被殺死了
下載地址以下:https://tortoisesvn.net/downloads.zh.html
找到要創建倉庫的文件夾下,右鍵點擊check out
這裏因爲我只設置了一個庫,直接能夠輸入個人外網IP就能夠了
這裏的帳號密碼爲/var/svn/fuck/conf/passwd裏面設置的那些
就能看到那個文件夾了:
在這個文件夾下。新建fuck.txt文件,隨便編輯文件以後,能夠看見文件夾的標誌變了
在該文件夾,右鍵點擊svn commit,彈出commit對話框,能夠在在此輸入每一個版本的日誌
在此文件夾下,右鍵點擊TortoiseSVN選擇show log能夠顯示文件的日誌記錄
最後配置在Linux上配置開機自動啓動svn,免去了重啓Linux後要本身啓動的svn的麻煩
輸入:
vi /etc/rc.d/rc.local
添加內容:
svnserve -d -r /var/svn/fuck
由於centos7以後,原來直接修改
/etc/rc.d/rc.local
啓動腳本自動生效的功能由於修改了須要從新賦予可執行權限
再輸入 chmod +x /etc/rc.d/rc.local
本身搭建的SVN穩定並且作到了真正的私密,這對開發來講着實是太好了。第一次寫博文,寫得很差請你們指正!