一、創建svn repository
svnadmin create /path/svn/pro //倉庫位置,svn是svn的目錄,pro是一個版本庫的目錄
PS:這里有個歧義,按這樣的方式添加 SVN 后,在啟動 SVN 服務的時候,記得要用 /path/svn 這個路徑,而不能用 /path/svn/pro 這個路徑,不然會報 doesn’t exist
例子:
先在 /User/apple 目錄下新建一個 svn 目錄,以后可以在 svn 目錄下創建多個倉庫目錄
打開終端,創建一個 mycode 倉庫,輸入指令:
svnadmin create /Users/apple/svn/mycode
指令執行成功后,會發現硬盤上多了個 /Users/apple/svn/mycode 目錄,目錄結構如下:
二、配置svn的用戶權限
主要是修改 /svn/mycode/conf 目錄下的三個文件:authz,passwd,svnserve.conf
1.打開 svnserve.conf,將下列配置項前面的#和空格都去掉
# anon-access = read
# auth-access = write
# password-db = passwd
# authz-db = authz
四行前的 # 號去掉,再將 anon-access = read 改為 anon-access = none,這樣禁止匿名訪問,需要帳號密碼才能訪問
PS:這里要注意的,在 # 號后是有空格的,得去掉這個空格,上文字頂格,不然也有錯誤
2.打開passwd,在[users]下面添加帳號和密碼
帳號是mj,密碼是123; 帳號是jj,密碼是456
3.打開authz,配置用戶組和權限
我們可以將在 passwd 里添加的用戶分配到不同的用戶組里,以后的話,就可以對不同用戶組設置不同的權限,沒有必要對每個用戶進行單獨設置權限。 在 [groups]下面添加組名和用戶名,多個用戶之間用逗號(,)隔開
PS:用戶組前要用 @ 符號,如果是用戶,直接寫用戶名就可以了。rm 代表可讀寫,顯然只讀就是 r 了
4.啟動SVN服務
svnserve -d -r /path/svn
特別注意,路徑一定是 SVN 的目錄,不是其中一個版本庫的目錄,不然,能正常啟動,就是訪問有問題
沒有任何輸出,則啟動成功
實例:
在終端輸入下列指令:
svnserve -d -r /Users/apple/svn
打開實用工具里面的“活動監視器” ,如下圖所示:
三、使用svn客戶端功能
1.從本地導入代碼到服務器(第一次初始化導入)在終端中輸入
svn import /Users/apple/webSite svn://localhost/mycode/webSite --username=mj --password=123 -m "初始化導入"
PS:將 /Users/apple/webSite 中的所有內容,上傳到服務器 mycode 倉庫的 webSite 目錄下,后面雙引號中的"初始化導入"是注釋
2.從服務器端下載代碼到客戶端本地
在終端中輸入
svn checkout svn://localhost/mycode --username=mj --password=123 /Users/apple/svnwebSite
PS:將服務器中 mycode 倉庫的內容下載到 /Users/apple/svnwebSite 目錄中
3.提交更改過的代碼到服務器
在步驟2中已經將服務器端的代碼都下載到 /Users/apple/svnwebSite 目錄中,現在修改下里面的一些代碼,然后提交這些修改到服務器
1.打開終端,先定位到 /Users/apple/svnwebSite 目錄,輸入:
cd /Users/apple/svnwebSite
2.輸入提交指令:
svn commit -m "修改了webSite文件"
這個指令會將 /Users/apple/svnwebSite 下的所有修改都同步到服務器端,
結果如下:
4.更新服務器端的代碼到客戶端
在終端中定位到客戶端代碼目錄后,比如上面的 /Users/apple/svnwebSite 目錄,然后再輸入指令:
svn update
5.至于svn的其他用法,可以在終端輸入:
svn help
參考
轉自:https://cnbin.github.io/blog/2015/06/13/mac-da-jian-svn-fu-wu-qi-huan-jing/