1. 程式人生 > >Mac搭建本地區域網SVN服務(Cornerstone)

Mac搭建本地區域網SVN服務(Cornerstone)

下週需要和團隊一起去外地工作幾天,發現提交程式碼合併比較麻煩,考慮到團隊還有美術同學,想想還是本地開啟個svn,先臨時用用吧。

mac系統是已經安裝了svn服務的,所以這裡我們只需要開啟就行了。

1. 驗證本地已安裝svn服務。

$ svnserve --version

2. 建立程式碼庫資料夾LocalSVNServer

$ sudo mkdir -p ~/Documents/LocalSVNServer

3. 初始化svn程式碼庫

$ sudo svnadmin create ~/Documents/LocalSVNServer

開啟LocalSVNServer資料夾,你會發現已經生成了svn服務。
這裡寫圖片描述

4. 配置svn使用者許可權,開啟conf/svnserve.conf

這裡寫圖片描述

修改以上位置,其中anon-access = read代表匿名訪問的時候是隻讀的,若改為anon-access = none代表禁止匿名訪問,需要帳號密碼才能訪問

5. 配置賬號passwd檔案,開啟conf/passwd

這裡寫圖片描述
[users]標籤下面的是使用者賬號,把需要的 使用者名稱=密碼 新增在這裡

6. 配置許可權authz檔案,開啟conf/authz

這裡寫圖片描述
在[groups]下新增dev = liuyanghui標示建立了一個使用者組dev,此使用者組包含有liuyanghui使用者,多個的話逗號連線:dev = liuyanghui,liuyanghui2

[/]
@dev = rw 這兩句標示給dev使用者組相應的許可權

[/]表示授權的目錄路徑,這裡是根目錄,假如根目錄下有一個目錄叫做test,那麼我們如果要編輯此目錄的許可權那麼就要寫成[test:/]

@dev表示給使用者組授權,如果要給某一個使用者授權則不用寫前面的@,r表示可讀,w表示可寫

7. 啟動svn(啟動成功後活動監視器中可以搜尋svnserve,會發現存在)

$ svnserve -d -r ~/Documents/LocalSVNServer

  • 關閉SVN
  • 命令終端直接輸入下面命令,第一個數字為程序號。
  • $ ps aux | grep svn
  • 這裡寫圖片描述
  • 然後$ sudo kill -xxx
    (xxx代表程序號),上面圖片就是18328
  • 可以在活動監視器裡進行搜尋:svnserve,停止該服務

8. Cornerstone新增svn倉庫,區域網其他機器svn地址寫ip。本機的話localhost

這裡寫圖片描述

9. 如果發現提交svn出現資料夾無許可權的話(一般是txn-current-lock無讀寫許可權),增加svn倉庫資料夾許可權

$ sudo chmod -R a+w ~/Documents/LocalSVNServer/