mac下的svn服務器建立

MAC下的SVN服務器建立:

from :?

http://blog.csdn.net/q199109106q/article/details/8655204

?

在Windows環境中,我們一般使用TortoiseSVN來搭建svn環境。在Mac環境下,由于Mac自帶了svn的服務器端和客戶端功能,所以我們可以在不裝任何第三方軟件的前提下使用svn功能,不過還需做一下簡單的配置。

我們首先來看下,如何在Mac環境下搭建svn服務器端環境。

創建代碼倉庫,用來存儲客戶端所上傳的代碼

我先在/User/apple目錄下新建一個svn目錄,以后可以在svn目錄下創建多個倉庫目錄

打開終端,創建一個mycode倉庫,輸入指令:svnadmin create /Users/apple/svn/mycode

指令執行成功后,會發現硬盤上多了個/Users/apple/svn/mycode目錄,目錄結構如下:

?

配置svn的用戶權限

主要是修改/svn/mycode/conf目錄下的三個文件

1.打開svnserve.conf,將下列配置項前面的#空格都去掉(空格一定要去掉,否則失敗)

[java]?view plaincopy
  1. #?anon-access?=?read??
  2. #?auth-access?=?write??
  3. ??
  4. #?password-db?=?passwd??
  5. ??
  6. #?authz-db?=?authz??

anon-access = read代表匿名訪問的時候是只讀的,若改為anon-access = none代表禁止匿名訪問,需要帳號密碼才能訪問

?

2.打開passwd,在[users]下面添加帳號和密碼,比如:

[java]?view plaincopy
  1. [users]??
  2. mj?=?123??
  3. jj?=?456??

?

帳號是mj,密碼是123

?

3.打開authz,配置用戶組和權限

我們可以將在passwd里添加的用戶分配到不同的用戶組里,以后的話,就可以對不同用戶組設置不同的權限,沒有必要對每個用戶進行單獨設置權限。

在[groups]下面添加組名和用戶名,多個用戶之間用逗號(,)隔開

[java]?view plaincopy
  1. [groups]??
  2. topgroup=mj,jj??

?

明mj和jj都是屬于topgroup這個組的,接下來再進行權限配置。

使用[/]代表svn服務器中的所有資源庫

[java]?view plaincopy
  1. [/]??
  2. @topgroup?=?rw??

?

上面的配置說明topgroup這個組中的所有用戶對所有資源庫都有讀寫(rw)權限,組名前面要用@

如果是用戶名,不用加@,比如mj這個用戶有讀寫權限

[java]?view plaincopy
  1. [/]??
  2. mj?=?rw??

?

至于其他精細的權限控制,可以參考authz文件中的其他內容

?

4.啟動svn服務

前面配置了這么多,最關鍵還是看能否正常啟動服務器,若啟動不來,前面做再多工作也是徒勞。

在終端輸入下列指令:svnserve -d -r /Users/apple/svn

或者輸入:svnserve -d -r /Users/apple/svn/mycode(不能再加/mycode的子目錄,否則導入代碼時會長時間沒反應)

沒有任何提示就說明啟動成功了

?

5.關閉svn服務

如果你想要關閉svn服務器,(在應用程序--》實用工具--》活動監視器,)最有效的辦法是打開實用工具里面的“活動監視器”

綜合上述,我們就可以輕松搭建svn服務器環境了

?

使用svn客戶端功能

1.從本地導入代碼到服務器(第一次初始化導入)

在終端中輸入

svn import /Users/apple/Documents/eclipse_workspace/weibo svn://localhost/mycode/weibo --username=mj --password=123 -m "初始化導入"

我解釋下指令的意思:將/Users/apple/Documents/eclipse_workspace/weibo中的所有內容,上傳到服務器mycode倉庫的weibo目錄下,后面雙引號中的"初始化導入"是注釋

?

2.從服務器端下載代碼到客戶端本地

在終端中輸入svn checkout svn://localhost/mycode --username=mj --password=123 /Users/apple/Documents/code

我解釋下指令的意思:將服務器中mycode倉庫的內容下載到/Users/apple/Documents/code目錄中

?

3.提交更改過的代碼到服務器

在步驟2中已經將服務器端的代碼都下載到/Users/apple/Documents/code目錄中,現在修改下里面的一些代碼,然后提交這些修改到服務器

1> 打開終端,先定位到/Users/apple/Documents/code目錄,輸入:cd/Users/apple/Documents/code

2> 輸入提交指令:svn commit -m "修改了main.m文件"

這個指令會將/Users/apple/Documents/code下的所有修改都同步到服務器端,假如這次我只修改了main.文件

可以看到終端的打印信息:

[java]?view plaincopy
  1. Sending????????weibo/weibo/main.m??
  2. Transmitting?file?data?.??
  3. Committed?revision?2.??

?

?

4.更新服務器端的代碼到客戶端

這個應該是最簡單的指令了,在終端中定位到客戶端代碼目錄后,比如上面的/Users/apple/Documents/code目錄,然后再輸入指令:svn update

?

5.至于svn的其他用法,可以在終端輸入:svn help

這里列出一大堆svn指令,后面括號中的內容的一般代表著指令的簡稱,比如我們可以用svn ci代替svn commit,用svn co代替svn checkout

?

?

http://www.7do.net/resources-4466-1-1.html

?

啟動終端,命令如下:?
svnadmin create /Users/Johnny/Repository
我在自己的主目錄下建立了一個名為“Repository”的代碼庫。

第二步,配置這個代碼倉庫。終端中繼續,命令如下:?
cd /Users/Johnny/Repository/conf?
首先修改svnserve.conf文件,只要把
#password-db = passwd?
這句話的#去掉,是這個配置項生效即可。保存退出。?
接著修改passwd文件,這個里面存著這個代碼庫接受的用戶名和密碼?
采用的形式是[用戶名]=[密碼]。可以增加一個用戶“user”,密碼“pass”?
user=pass?
保存退出。?

第三步,啟動服務器。終端中繼續,命令如下:?
svnserve -d -r /Users/Johnny/Repository?
沒有任何提示就說明啟動成功了。?
停止:killall -9 svnserve

轉載于:https://www.cnblogs.com/mjian/p/9250140.html

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:
http://www.pswp.cn/news/396976.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/396976.shtml
英文地址,請注明出處:http://en.pswp.cn/news/396976.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

SQL手冊

一.SQL簡介 二.SQL數據類型 三.SQL語法 四.SQL SELECT語句 五.SQL INSERT語句 六.SQL UPDATE語句 七.SQL DELETE語句 八.SQL DROP語句 九.SQL CREDTE語句 十.SQL ALTER 語句總結 十一.SQL事務 十二.函數總結 十三.數據庫其他操作 十四.MySQL 、SQL MS Access、和 SQL Server 數…

python語音合成并播放_使用Python實現文字轉語音并生成wav文件的例子

目前手邊的一些工作,需要實現聲音播放功能,而且僅支持wav聲音格式。 現在,一些網站上支持文字轉語音功能,但是生成的都是MP3文件,這樣還需要額外的軟件來轉成wav文件,十分麻煩。 后來,研究Pytho…

php 字符串 替換 最后,php如何替換字符串中的最后一個字符

php替換字符串中的最后一個字符的方法是:可以通過preg_replace()函數來實現。該函數的語法為:【preg_replace(mixed $pattern, mixed $replacement, mixed $subject】。要替換字符串中的最后一個字符,可以通過preg_replace()函數來實現。(如果…

生日轉換成星座

/// <summary>/// 生日轉換成星座/// </summary>/// <param name"birthday"></param>/// <returns></returns>public static string GetAstro(DateTime birthday){string value string.Empty;int month birthday.Month;int da…

logback的使用和logback.xml詳解

原文地址&#xff1a;https://www.cnblogs.com/warking/p/5710303.html#4046335 作者&#xff1a;行走在云端的愚公 一、logback的介紹   Logback是由log4j創始人設計的另一個開源日志組件,官方網站&#xff1a; http://logback.qos.ch。它當前分為下面下個模塊&#xff1a; …

tcp協議的主要功能是什么_前端要知道的網絡知識一:TCP/IP 協議到底在講什么...

你之所以不知道那套書在講什么&#xff0c;是因為你還沒有認識到網絡協議有什么用&#xff0c;怎么用&#xff0c;以什么形式在使用&#xff0c;網絡協議的概念很簡單&#xff0c;就幾句話&#xff0c;你只知道網絡協議的概念&#xff0c;只知道很多大神都推薦這套書&#xff0…

php統計字符個數,php中3種方法統計字符串中每種字符的個數并排序

//這個方法純粹是背函數&#xff0c;不解釋&#xff1b;function countStr($str){$str_arraystr_split($str);$str_arrayarray_count_values($str_array);arsort($str_array);return $str_array;}//以下是例子&#xff1b;$str"asdfgfdas323344##$\$fdsdfg*$**$*$**$$4435…

mysql創建定時器(event),查看定時器,打開定時器,設置定時器時間

為什么80%的碼農都做不了架構師&#xff1f;>>> 由于項目需要創建定時器&#xff08;evevt&#xff09;&#xff0c;所以就百度了一下&#xff0c;發現基本都是來源于一個模板&#xff0c;有些功能還不全&#xff0c;現在自己總結一下。 注&#xff1a;mysql版本是…

音頻視頻

1.IOS視頻播放代碼&#xff08;添加MediaPlayer.framework和#import&#xff09; -(void)playMovie:(NSString *)fileName{//視頻文件路徑NSString *path [[NSBundle mainBundle] pathForResource:fileName ofType:"mp4"];//視頻URLNSURL *url [NSURL fileURLWithP…

二分查找、變形及應用

[LeetCode] 35 Search Insert Position 題目 Given a sorted array and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order.You may assume no duplicates in the array. 測試案例 Input: […

linux內核怎么修改屏幕旋轉方向_樹莓派4—屏幕旋轉

配置&#xff1a;樹莓派4raspberry pi系統&#xff0c;HDMI顯示&#xff0c;非觸屏。問題&#xff1a;想將屏幕旋轉90&#xff0c;按網上說的&#xff0c;方法一&#xff1a;在config.txt文件中添加display_rotate1&#xff0c;或者添加display_hdmi_rotate1&#xff0c;保存后…

周記隨筆-php5.6與apache2.4的windows32安裝

原材料&#xff1a;php.net , httpd.apache.org/download.cgi Apache的安裝 &#xff0c;在下載頁面有依賴關系的說明 。 下載對應版本的壓縮包&#xff0c;解壓至目標目錄&#xff0c;例如D盤根目錄&#xff0c;首先修改配置 1 serverRoot: ServerRoot "c:/Apache24"…

獨家直播!阿里移動前端開源框架Weex揭秘

或許你寫過了很多行代碼&#xff0c;修過許多的bug&#xff0c;學過各種各樣的語言&#xff0c;卻只在一個最好的時機遇見了他…… 是啥&#xff1f; 敲&#xff01;黑&#xff01;板&#xff01;跟&#xff01;我&#xff01;念&#xff01;Weex&#xff5e;&#xff5e;&…

python異常值處理實例_利用Python進行異常值分析實例代碼

前言 異常值是指樣本中的個別值&#xff0c;也稱為離群點&#xff0c;其數值明顯偏離其余的觀測值。常用檢測方法3σ原則和箱型圖。其中&#xff0c;3σ原則只適用服從正態分布的數據。在3σ原則下&#xff0c;異常值被定義為觀察值和平均值的偏差超過3倍標準差的值。P(|x?μ|…

MSSQL 發布訂閱,實現讀寫分離

主庫做增刪改&#xff0c;從庫只讀。 大部分的數據庫壓力&#xff0c;都是由查詢引起的&#xff0c;讀寫分離可以減輕數據庫的壓力。 1、在(主)數據庫上對需要同步的數據進行發布。 2、在(從)數據庫上對(主)數據庫的發布進行訂閱。 注&#xff1a;發布訂閱都需要實際的服務器名…

php get為空,php – $_GET在url有變量時為空

我有一個看起來像這個reglph的文件&#xff1f;lang no_NO& passkey test并試圖獲取密碼變量,但它一直顯示為空白.當我嘗試print_r($_ GET);它打印Array()?!怎么會發生這種情況&#xff1f;該網站看起來像這樣print_r($_GET);include(..\libs\Smarty.class.php);?>A…

Block

1、認識Block Block封裝了一段代碼,可以在任何時候執行Block可以作為函數參數或者函數的返回值&#xff0c;而其本身又可以帶輸入參數或返回值&#xff0c;它和傳統的函數指針很類似&#xff0c;但是有區別&#xff1a;block是inline&#xff08;內聯函數&#xff09;的&#x…

堅持學習WF(8):本地服務之調用外部方法

WF提供了一組核心服務&#xff0c;例如在SQL 數據庫中存儲工作流實例的執行詳細信息的持久性服務&#xff0c;計劃服務&#xff0c;事務服務和跟蹤服務。除了這些WF也提供了另外一種服務&#xff0c;叫做Local Service也可以叫做Data exchange service。主要是實現工作流和宿主…

c++歸并排序_合并排序法

一、合并排序(Merge Sort) 就是將多個有序數據表合并成一個有序數據表。如果參與合并的只有兩個有序表&#xff0c;那么稱為二路合并。對于一個原始的待排序序列&#xff0c;往往可以通過分割的方法來歸結為多路合并排序。二、一個待排序的原始數據序列進行合并排序的基本思路是…

golang json數組拼接

2016年06月16日 15:38:25 閱讀數&#xff1a;2575 標簽&#xff1a; golang json 數組 更多 個人分類&#xff1a; golang func main() {a : []byte({"Parents": [ "aaaaa", "bbbbbbb" ]})b : []byte({"Parents": [ "Gomez"…