A. MAC环境下如何搭建SVN服务器
在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,将下列配置项前面的#和空格都去掉
# anon-access = read
# auth-access = write
# password-db = passwd
# authz-db = authz
复制代码
anon-access = read代表匿名访问的时候是只读的,若改为anon-access = none代表禁止匿名访问,需要帐号密码才能访问
[users]
mj=123
jj=456
复制代码
帐号是mj,密码是123
我们可以将在passwd里添加的用户分配到不同的用户组里,以后的话,就可以对不同用户组设置不同的权限,没有必要对每个用户进行单独设置权限。
在[groups]下面添加组名和用户名,多个用户之间用逗号(,)隔开
<font color="rgb(0, 0, 0)"><font style="background-color:rgb(254, 254, 242)"><font face="verdana, Arial, Helvetica, sans-serif">[groups]
topgroup=mj,jj</font></font></font>
复制代码
[/]
@topgroup=rw
复制代码
[/]
mj=rw
复制代码
回到顶部
svn import /Users/apple/Documents/eclipse_workspace/weibo svn://localhost/mycode/weibo --username=mj --password=123 -m "初始化导入"
复制代码
Sending weibo/weibo/main.m
Transmitting file data .
Committed revision 2.
复制代码
B. CentOS瀹夎匮ortoiseSVN 瀹㈡埛绔
涓銆丆entOS瀹夎匮ortoiseSVN
澶嶅埗浠g爜
浠g爜濡备笅:
yum install -y subversion
浜屻丼VN瀹㈡埛绔锻戒护
1銆佹煡鐪嫔府锷 锻戒护锛歴vn help
钖锷ㄦ湇锷
浣跨敤锻戒护svnserve钖锷ㄦ湇锷
澶嶅埗浠g爜
浠g爜濡备笅:
svnserve -d -r /srv/svn/repos
涔熷彲浠ュ姞绔鍙e彿
澶嶅埗浠g爜
浠g爜濡备笅:
svnserve -d 钬搇isten-port 9999 -r /srv/svn/repos
娉ㄦ剰锛氩悗闱㈢殑璺寰勫繀椤绘槸涓涓狲vnadmin鍒涘缓镄勪粨搴撹矾寰勶纴钖﹀垯浼氭姤阌欙细Not a repository
2銆佸悓姝(checkout)链嶅姟鍣ㄦ暟鎹鍒版湰鍦 锻戒护锛歴vn checkout [directory] svn co [directory]
eg:
澶嶅埗浠g爜
浠g爜濡备笅:
#cd /www/website/pp#svn co svn://svn_site_url ./
3銆佹彁浜(commit)链鍦版枃妗e埌链嶅姟鍣 锻戒护锛歴vn commit -m 钬溾 [directory|file] svn ci -m 钬溾 [directory|file]
4銆佹洿鏂(update)链嶅姟鍣ㄦ暟鎹鍒版湰鍦 锻戒护锛歴vn update [directory|file] svn up [directory|file]
5銆佹煡鐪嬫棩蹇 锻戒护锛歴vn log [directory|file]
6銆佸炲姞(add)链鍦版暟鎹鍒版湇锷″櫒
锻戒护锛歴vn add
7銆侀”鐩瀵煎嚭 export
锻戒护锛
澶嶅埗浠g爜
浠g爜濡备笅:
svn export 钬揻orce svn_project_dir target_dir
鍙﹂梼涓婇儴鍒嗗父鐢ㄥ懡浠
1銆佸皢鏂囦欢checkout鍒版湰鍦扮洰褰
svn checkout path锛坧ath鏄链嶅姟鍣ㄤ笂镄勭洰褰曪级
渚嫔傦细svn checkout svn://192.168.1.1/pro/domain
绠鍐欙细svn co
2銆佸线鐗堟湰搴扑腑娣诲姞鏂扮殑鏂囦欢
svn add file
渚嫔傦细svn add test.php(娣诲姞test.php)
svn add *.php(娣诲姞褰揿墠鐩褰曚笅镓链夌殑php鏂囦欢)
3銆佸皢鏀瑰姩镄勬枃浠舵彁浜ゅ埌鐗堟湰搴
svn commit -m 钬淟ogMessage钬 [-N] [--no-unlock] PATH(濡傛灉阃夋嫨浜嗕缭鎸侀挛锛屽氨浣跨敤钬搉o-unlock寮鍏)
渚嫔傦细svn commit -m 钬渁dd test file for my test钬 test.php
绠鍐欙细svn ci
4銆佸姞阌/瑙i挛
svn lock -m 钬淟ockMessage钬 [--force] PATH
渚嫔傦细svn lock -m 钬渓ock test file钬 test.php
svn unlock PATH www.
5銆佹洿鏂板埌镆愪釜鐗堟湰
svn update -r m path
渚嫔傦细
svn update濡傛灉钖庨溃娌℃湁鐩褰曪纴榛樿ゅ皢褰揿墠鐩褰曚互鍙婂瓙鐩褰曚笅镄勬墍链夋枃浠堕兘镟存柊鍒版渶鏂扮増链銆
svn update -r 200 test.php(灏嗙増链搴扑腑镄勬枃浠秚est.php杩桦师鍒扮増链200)
svn update test.php(镟存柊锛屼簬鐗堟湰搴揿悓姝ャ傚傛灉鍦ㄦ彁浜ょ殑镞跺欐彁绀鸿繃链熺殑璇濓纴鏄锲犱负鍐茬獊锛岄渶瑕佸厛update锛屼慨鏀规枃浠讹纴铹跺悗娓呴櫎svn resolved锛屾渶钖庡啀鎻愪氦commit)
绠鍐欙细svn up
6銆佹煡鐪嬫枃浠舵垨钥呯洰褰旷姸镐
1锛塻vn status path锛堢洰褰曚笅镄勬枃浠跺拰瀛愮洰褰旷殑鐘舵侊纴姝e父鐘舵佷笉鏄剧ず锛
銆?锛氢笉鍦╯vn镄勬带鍒朵腑锛汳锛氩唴瀹硅淇鏀癸绂C锛氩彂鐢熷啿绐侊绂A锛氶勫畾锷犲叆鍒扮増链搴掳绂K锛氲阌佸畾銆
2锛塻vn status -v path(鏄剧ず鏂囦欢鍜屽瓙鐩褰旷姸镐)
绗涓鍒椾缭鎸佺浉钖岋纴绗浜屽垪鏄剧ず宸ヤ綔鐗堟湰鍙凤纴绗涓夊拰绗锲涘垪鏄剧ず链钖庝竴娆′慨鏀圭殑鐗堟湰鍙峰拰淇鏀逛汉銆
娉锛歴vn status銆乻vn diff鍜 svn revert杩欎笁𨱒″懡浠ゅ湪娌℃湁缃戠粶镄勬儏鍐典笅涔熷彲浠ユ墽琛岀殑锛屽师锲犳槸svn鍦ㄦ湰鍦扮殑.svn涓淇濈暀浜嗘湰鍦扮増链镄勫师濮嬫嫹璐濄
绠鍐欙细svn st
7銆佸垹闄ゆ枃浠
svn delete path -m 钬渄elete test fle钬
渚嫔傦细svn delete svn://192.168.1.1/pro/domain/test.php -m 钬渄elete test file钬
鎴栬呯洿鎺svn delete test.php 铹跺悗鍐岘vn ci -m 钬榙elete test file钬桡纴鎺ㄨ崘浣跨敤杩欑
绠鍐欙细svn (del, remove, rm)
8銆佹煡鐪嬫棩蹇
svn log path
渚嫔傦细svn log test.php 鏄剧ず杩欎釜鏂囦欢镄勬墍链変慨鏀硅板綍锛屽强鍏剁増链鍙风殑鍙桦寲
9銆佹煡鐪嬫枃浠惰︾粏淇℃伅
svn info path
渚嫔傦细svn info test.php
10銆佹瘆杈冨樊寮
svn diff path(灏嗕慨鏀圭殑鏂囦欢涓庡熀纭鐗堟湰姣旇缉)
渚嫔傦细svn diff test.php
svn diff -r m:n path(瀵圭増链珐鍜岀増链琻姣旇缉宸寮)
渚嫔傦细svn diff -r 200:201 test.php
绠鍐欙细svn di www.
11銆佸皢涓や釜鐗堟湰涔嬮棿镄勫樊寮傚悎骞跺埌褰揿墠鏂囦欢
svn merge -r m:n path
渚嫔傦细svn merge -r 200:205 test.php锛埚皢鐗堟湰200涓205涔嬮棿镄勫樊寮傚悎骞跺埌褰揿墠鏂囦欢锛屼絾鏄涓鑸閮戒细浜х敓鍐茬獊锛岄渶瑕佸勭悊涓涓嬶级
12銆丼VN 甯锷
svn help
svn help ci
C. 如何在服务器liunx上搭建svn服务器
body{ line-height:200%; } linux下svn服务器搭建视频教程 背景:随着软件工程化的不断深入,项目版本管理是每个软件开发团队都必须面对的问题。如果没有好的版本控制版本管理,大项目可能无法顺利进行。对于需要许多给予互联网的开源项目,版本控制和版本管理则更为重要。即使是对于一个人开发,版本管理工作也很有益处,它能让你的工作条理清晰,避免许多重复工作。 今天小编为大家介绍svn服务器搭建视频教程。 1,首先安装好LINUX系统,然后YUM安装: #yum -y install svnversion 2,安全完成之后我们来配置: 创建版本库目录: #mkdir -p /banbenku/svn/ 3,然后启用: #svnserve -d -r /banbenku/svn 然后查看是否启动了! ps -efgrep svn; [root@207 conf]# lsof -i:3690 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME svnserve 8454 root 3u IPv4 1346200 0t0 TCP *:svn (LISTEN) 4,然后我们来新建版本: mkdir -p /banbenku/svn/zhoujie/ cd /banbenku/svn/zhoujie/conf 在这里有三个文件:authz passwd svnserve.conf svnserve.conf是主要配置文件; vi svnserve.conf 修改如下: anon-access = read auth-access = write password-db = /banbenku/svn/zhoujie/conf/passwd authz-db = /banbenku/svn/zhoujie/conf/authzwq! 保存退出: 然后修改passwd: 建立用户名与密码内容如下: zhoujie = 123456 wq 保有存退出: 然后修改:authz: 内容如下: [groups] admin = zhoujie [zhoujie:/] @admin =rw wq 保存退出! 这样我们便配置好了;要使用启生效,重启SVN: ps -efgrep svn kill -9 PID svnserve -d -r /banbenku/svn 然后再检测: [root@207 conf]# lsof -i:3690 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME svnserve 8454 root 3u IPv4 1346200 0t0 TCP *:svn (LISTEN) 如果如上所示,那便没有问题了; linux下svn服务器搭建视频教程
D. linux鎼寤簊vn链嶅姟鍣╨inux鎼寤簊vn
濡备綍鍦↙inux鍜寃indows涓婅繀阃熷缓绔媠vn+ssh锛
1锛氶噰鐢⊿amba链嶅姟鍣锛屽湪Linux涓嬭剧珛涓猄amba链嶅姟鍣锛岃繖镙穑indows灏卞彲浠ヨ块梾Linux涓婄殑Samba链嶅姟鐩褰曚简锛2锛歏mware鎻愪緵浜嗕竴涓狲harefolder镄勫姛鑳斤纴鍙浠ュ湪Windows涓婅剧疆涓涓鍏变韩鐩褰曪纴鍦╒mware閲岄溃鍙浠ュ幓/mnt/hgfs閲岄溃镓惧埌鍏变韩镄勭洰褰曘
SVN锻戒护琛屾庝箞鐢锛
浣犲湪锻戒护琛屽彧杈揿叆浜唖vn镄勫湴鍧锛岃繖镙锋槸杩炴帴涓崭笂镄勚
浣犻渶瑕佷竴涓鏀鎸乻vn镄勮蒋浠讹纴姣斿俥clipse銆
鍦ㄥ懡浠よ岀殑璇濓纴鐢ㄤ笅闱㈢殑锻戒护锛屽墠鎻愭槸浣犲畨瑁呬简svn锻戒护銆
鐪嬬湅杩欎釜钖
SVN浣跨敤鎸囧紩锛堟湰鍦版湇锷″櫒涓篖inux锛-鑵捐寮鏀惧钩鍙
linux閰岖疆宸叉湁镄勬枃浠跺す涓簊vn镄勬寚瀹氱洰褰曪纻
瑕佸疄鐜拌繖涓𨱍虫硶锛屽叧阌铡熺悊灏辨槸鎶奷efault杩欎釜鏂囦欢澶瑰彉鎴愬湪svn鎺у埗涔嬩笅镄勪竴涓宸ヤ綔鍓链锛岀劧钖庨氲繃post-commit阍╁瓙铡昏嚜锷ㄦ洿鏂拌繖涓宸ヤ綔鍓链銆傚嚑涓鍏抽敭镎崭綔锛
1銆侀渶瑕佸湪链嶅姟鍣ㄤ笂瀹夎却vn链嶅姟鍣ㄧ锛屽惎锷╯vn链嶅姟锛屽苟鍒涘缓涓涓狲vn搴掳绂
2銆佸皢褰揿墠镄刣efault鏂囦欢澶瑰彉鎴愭柊寤虹殑svn搴撶殑宸ヤ綔鍓链锛埚㈡埛绔瀛樻斁鏁版嵁镄勬枃浠跺す锛夛纴鍏蜂綋镎崭綔锛氩皢褰揿墠default鏂囦欢澶逛笅镄勫唴瀹筰mport鍒版柊寤虹殑svn搴扑腑锛岀劧钖庡啀娓呯┖default锛岀劧钖庡啀灏唖vn搴扑腑镄勫唴瀹筩heckout鍒癫efault锛
3銆佷娇鐢╯vn镄刾ost-commit阍╁瓙锛堣繖涓阍╁瓙鏄鍦ㄦ疮娆℃垚锷焎ommit钖庤玈VN链嶅姟鍣ㄨ嚜锷ㄨ皟鐢ㄧ殑锛夛纴缂栬緫杩欎釜阍╁瓙锛屽唴瀹瑰氨鏄痵vnupdate鏂囦欢澶筪efault锛岃繖镙锋疮娆commit鎴愬姛钖庡氨浼氲嚜锷ㄦ洿鏂癫efault鏂囦欢澶癸绂
4銆佸湪浣犺嚜宸辩殑鐢佃剳涓奵heckout闾d釜svn搴掳纴铹跺悗浣犲氨鍙浠ヤ粠链鍦瘫ommit锛岀劧钖庢湇锷″櫒绔灏辫嚜锷ㄦ洿鏂癫efault鏂囦欢澶逛简銆
E. 濡备綍鍦╳indows涓婂畨瑁呴儴缃茶剧疆SVN链嶅姟鍣
宸ュ叿/铡熸枡
VisualSVN Server锛孴ortoiseSVN
1銆侀栧厛锏惧害鎼灭储涓嬭浇杞浠躲
VisualSVN Server锛孴ortoiseSVN
F. linux涓嬩娇鐢╯vn锛屾庢牱鐢╰ortoiseSVN阈炬帴链嶅姟鍣
钖锷╯vn
寤虹珛钖锷╯vn镄勭敤鎴:
useradd svnroot
passwd svnroot
镙规嵁鎻愮ず涓虹敤鎴穝vnroot璁剧疆瀵嗙爜
鍏佽哥敤鎴穝vn璁块梾鐗堟湰搴:
chown 钬揜 svnroot:daemon /home/svnroot/repository
钖锷╯vn锛
su -c "svnserve -d --listen-port 9999 -r /opt/svndata" svnroot
钖锷ㄥ悗妫镆ワ细
[root@localhost svntest]# ps -ef |grep svnserve
svnroot 7299 1 0 14:24 ? 00:00:00 svnserve -d --listen-port 9999 -r /var/www/svn
root 7335 7181 0 14:29 pts/1 00:00:00 grep svnserve
[root@localhost svntest]#
杞杞斤纴浠呬緵鍙傝冦