SVNserver的本地搭建和使用
Subversion是优秀的版本号控制工具,其具体的的长处和具体介绍,这里就不再多说.
首先来下载和搭建SVNserver.
如今Subversion已经迁移到apache站点上了,下载地址:
http://subversion.apache.org/packages.html
这是二进制文件包的下载地址,你可在左側的导航栏找到源码,文档的下载地址.
windows操作系统以下的二进制文件包一共同拥有5种,如图:
个人觉得最好用VisualSVN server 服务端和 TortoiseSVNclient搭配使用.
点开上面的VisualSVN连接,下载VisualSVN server,如图:
然后下载TortoiseSVNclient,官网下载地址:http://tortoisesvn.net/downloads.html
注意下载跟你电脑匹配的安装包,在页面的以下你还能够找到语言包,如图:
下载完毕后,应该有这些安装包,如图:
TortoiseSVN安装包和中文简体语言包
VisualSVN server安装包
先安装VisualSVN server的安装包,双击VisualSVN server安装包,如图:
点Next,进入下一步,如图:
点允许,进图下一步,如图:
选择上面一个选项,点Next,进入下一步,如图:
Location是指VisualSVN Server的安装文件夹,Repositorys是指定你的版本号库文件夹.Server Port指定一个port,Use secure connection勾山表示使用安全连接,Use Subversion authentication 表示使用Subversion自己的用户认证.点击Next,进入下一步,如图:
点Install,进入下一步,如图:
等待安装完毕,如图:
安装完毕后,启动VisualSVN Server Manager,如图:
接下来我们安装TortoiseSVN,双击安装包,进入下一步.如图:
点击Next,进入下一步,如图:
选择接受,然后点击Next,进入下一步,如图:
选择安装路径,然后点击Next,进入下一步,如图:
点击Install,開始安装,如图:
等待安装完毕,安装完毕后如图:
接下来我们安装中文简体语言包,这个很easy,一路Next即可,就不截图了.语言包安装完毕以后在桌面随意空白地方单击鼠标右键,会在右键菜单里找到SVN,如图:
选择设置,进入下一步,如图:
在右边的语言里面选择中文简体,然后点击应用,确定,汉化即完毕,如图:
到这里,服务端和client都已经安装完成,下一篇介绍用VisualSVN Server创建版本号库,以及TortoiseSVN的使用.
SVNserver搭建和使用(二)
上一篇介绍了VisualSVN Server和TortoiseSVN的下载,安装,汉化.这篇介绍一下怎样使用VisualSVN Server建立版本号库,以及TortoiseSVN的使用.
首先打开VisualSVN Server Manager,如图:
能够在窗体的右边看到版本号库的一些信息,比方状态,日志,用户认证,版本号库等.要建立版本号库,须要右键单击左边窗体的Repositores,如图:
在弹出的右键菜单中选择Create New Repository或者新建->Repository,进入下一步:
输入版本号库名称,勾上Create default structure复选框(推荐这么做).点击OK,版本号库就创建好了,版本号库中会默认建立trunk,branches,tags三个目录,如图:
这时候我们将项目导入到版本号库中,找到你的项目目录,在项目目录上点击鼠标右键,找到SVN菜单,选择导入,如图:
在弹出的对话框中填上版本号库URL,这个URL能够从VisualSVN Server Manager中获取,在你的版本号库上单击右键,选择Copy URL to Clipboard,这样就把版本号库URL拷贝到你的剪贴版了.如图:
将复制的版本号库URL粘贴上,在URL后面加上trunk子路径.然后在导入信息里面填上导入信息"导入项目到版本号库".如图:
点击确定,所选中的项目就会被导入到版本号库中.如图:
项目导入到版本号库以后,不能随便让谁都可以读写版本号库,所以须要建立用户组和用户.
在VisualSVN Server Manager窗体的左側右键单击用户组,选择Create User或者新建->User,如图:
在弹出的对话框中填写User name和Password,然后点击OK,如图:
用同样的方式分别创建用户Develpoer1,Develpoer2,Develpoer3,Test1,Test2,Manger六个用户,分别代表3个开发者,两个測试人员和一个项目经理,如图:
然后我们建立用户组,在VisualSVN Server Manager窗体的左側右键单击用户组,选择Create Group或者新建->Group,如图:
在弹出窗体中填写Group name为Developers,然后点Addbutton,在弹出的窗体中选择三个Developer,增加到这个组,然后点Ok,如图:
用同样的方式创建组Managers,Testers,如图:
接下来我们给用户组设置权限,在MyRepository上单击右键,选择属性,如图:
在弹出的对话框中,选择Security选项卡,点击Addbutton,选中Developers,Managers,Testers三个组,然后加入进来,给Developers,Managers权限设置为Read/Write,Tester权限设置为Read Only,如图:
到此,服务端就完毕了.
接下来,我们用client去检出代码,在桌面空白处单击右键,选择SVN检出,在弹出的对话框中填写版本号库URL(详细获取方式,上面讲上传项目到版本号库的时候讲过),选择检出文件夹,点击确定.如图:
開始检出项目,如图:
检出完毕之后,我们打开工作副本目录,会看到全部文件和目录都有一个绿色的√.如图:
至此,创建版本号库和使用TortoiseSVN导入项目,检出项目已经介绍完成.
下一篇介绍TortoiseSVN的使用,以及冲突解决的方法.
SVNserver搭建和使用(三)
接下来,试试用TortoiseSVN改动文件,加入文件,删除文件,以及怎样解决冲突等.
加入文件
在检出的工作副本中加入一个Readme.txt文本文件,这时候这个文本文件会显示为没有版本号控制的状态,如图:
这时候,你须要告知TortoiseSVN你的操作,如图:
增加以后,你的文件会变成这个状态,如图:
这时候使用TortoiseSVN进行提交.这样别人就能看到你所做的更改了,如图.
改动文件
使用TortoiseSVN更新,改动工作副本中的Readme.txt文件,增加"hello world!",然后保存,你会发现Readme.txt文件的图标改变了,如图:
这个红色的叹号代表这个文件被改动了,这时候,提交更改,其它人就可以看到你的更改.
重命名文件
使用TortoiseSVN更新,重命名工作副本中的Readme.txt文件为"Readme1.txt',然后保存,你会发现Readme.txt文件的图标改变了,如图:
更加入文件一个道理,这时候你须要告诉TortoiseSVN你的操作,如图:
增加以后,提交,这时候版本号库中的Readme.txt文件将会被重命名为"Readme1.txt".
删除文件
使用TortoiseSVN更新,使用TortoiseSVN删除工作副本中的Readme.txt文件,然后提交,版本号库中的对应文件即被删除掉了,如图:
强制写凝视
为了以后你能更清晰的看到你所做的每一次更改的原因,你在每次提交的时候应该写上凝视,并且尽量具体.如图:
可是,可能有的人由于认为太繁琐,而不填写凝视,这不利于以后的版本号控制,能够将强制在提交的时候写凝视,首先单击右键,选择TortoiseSVN->属性,如图:
在弹出的对话框中,点击新建->日志大小,设置提交日志的最小字符数和锁定日志的最小字符数为20,提交文本框中显示边线的字符位置设置为100,点击确定,如图:
提交,以后再次提交的时候,假设输入的凝视少于20个字符,将无法提交.
冲突解决
冲突问题是最常见的问题,它是这样产生的,A用户check out了一个工作副本A,接着B用户又check out了一个工作副本B.然后A用户对副本A中的文件C做了改动(能够是内容改动,文件删除,重命名,以及位置移动),而且提交.这时候B用户也对文件C的同样部分做了改动,这时候假设B用户进行提交,会先被告知版本号过时,要求更新,然后更新的时候会提示冲突了,这时候能够用冲突编辑器进行手动选择.
TortoiseSVNclient又一次设置username和password
在第一次使用TortoiseSVN从serverCheckOut的时候,会要求输入username和password。这时输入框以下有个选项是保存认证信息,假设选了这个选项,那么以后就不用每次都输入一遍usernamepassword了。
只是,假设后来在server端改动了usernamepassword。则再次检出时就会出错,并且这个client非常弱智,出错之后不会自己主动跳出usernamepassword输入框让人更新,我找了半天也没找到改动这个usernamepassword的地方。
终于。找到两种解决的方法:
办法一:在TortoiseSVN的设置对话框中,选择“已保存数据”。在“认证数据”那一行点击“清除”button,清楚保存的认证数据。再检出的时候就会又一次跳出usernamepassword输入框。
假设方法一不起作用。则能够採用方法二:
Tortoise的usernamepassword等认证信息都是缓存在client文件系统的这个文件夹:
C:/Documents and Settings/Administrator/Application Data/Subversion/auth
删除auth以下的全部目录,又一次连接远程server进行检出,对话框就会出现!
备注:sercer url从服务端复制过来是包括的server名,别人使用这个地址的时候须要把server名替换成serverip地址
SVNserver的本地搭建和使用的更多相关文章
- 如何使用XAMPP本地搭建一个属于你自己的网站
你好,从今天开始,我将为大家带来一些我学习SEO和建站的免费教程,今天为大家带来的是如何用XAMPP搭建一个属于你自己的网站.来到这里,可以说很多在百度上已经过时了的资料需要总结的资料这里都有,你只要 ...
- 使用APMServ本地搭建多个网站
October 27, 2014 使用APMServ本地搭建多个网站教程 把我写好的代码直接粘贴到 httpd.conf 文件的末尾.然后保存就可以了.代码如下: <VirtualHost *: ...
- 超快速使用docker在本地搭建hadoop分布式集群
超快速使用docker在本地搭建hadoop分布式集群 超快速使用docker在本地搭建hadoop分布式集群 学习hadoop集群环境搭建是hadoop入门的必经之路.搭建分布式集群通常有两个办法: ...
- 利用XAMPP本地搭建WordPress博客
现在越来越多的人利用WordPress搭建了自己的博客网站,我也是一样,但是还有一些人不知道怎么搭建WordPress网站的方法,因为怕弄 不好,所以也就没有花钱去做,所以这里我就讲讲怎么样利用XAM ...
- 如何在本地搭建DVWA环境
如何在本地搭建DVWA环境 1.工具下载: (1)phpStudy: http://phpstudy.php.cn/download.html (2)DVWA:http://www.dvwa.c ...
- 本地搭建json-server
1.前言 为了前端项目获取数据,需要在本地搭建json-server,这样保证可以在本地实现增删改查的操作. 2.安装 全局安装: npm -g json-server 3.创建一个json-serv ...
- 最新版本elasticsearch本地搭建入门篇
最新版本elasticsearch本地搭建入门篇 项目介绍 最近工作用到elasticsearch,主要是用于网站搜索,和应用搜索. 工欲善其事,必先利其器. 自己开始关注elasticsearch, ...
- 本地搭建Wordpress博客网站(Windows)
最近在写一些web功能测试的一个主题分享,里边有一个分类是数据库测试,那么数据库测试有几个点的方法,其中有一个是学会看数据库的日志.由于公司内部的数据库日志我们测试人员暂时不开放查看,所以打算自己在本 ...
- 如何在本地搭建一个Android应用crashing跟踪系统-ACRA
https://github.com/bboyfeiyu/android-tech-frontier/tree/master/others/%E5%A6%82%E4%BD%95%E5%9C%A8%E6 ...
随机推荐
- Android 仿360桌面小人
首先自定义FloatsWindowView,用于显示动画小人. import android.annotation.SuppressLint; import android.content.Conte ...
- ASP中 Request.Form中文乱码的解决方法
分享下解决方法直接用request.Form()获取的是所有数据所以会有乱码(具体原因不祥) 用 VBScript code Foreach obj in Request.Form Response. ...
- IIS启动网站
在启动一个网站前要先打开一个服务.可是Windows 的提示非常的奇怪: “除非 Windows Activation Service (WAS)和万维网发布服务(W3SVC)均处于运行状态,否则无法 ...
- MySQL 复制
第一步:为配置主数据库与备数据库 主:server_id = 1 log_bin = E:\mysql_log_bin #复制事实上是二进制文件在备库上的重做,所以要支持二进制文件. 备: ...
- UPPH、UPH
UPPH=units Per Hour Per Person,单位小时人均产能,是公司作为衡量员工工作绩效的重要指标. UPPH是衡量员工单位时间工作量的一种绩效指标. UPPH计算方式如下: UPP ...
- Jsoup代码解读之二-DOM相关对象
Jsoup代码解读之二-DOM相关对象 之前在文章中说到,Jsoup使用了一套自己的DOM对象体系,和Java XML API互不兼容.这样做的好处是从XML的API里解脱出来,使得代码精炼了很多 ...
- 51nod 1237 最大公约数之和 V3(杜教筛)
[题目链接] https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1237 [题目大意] 求[1,n][1,n]最大公约数之和 ...
- [置顶] .NET下枚举类型的Save和Load分析
今天在写代码的时候,心血来潮对原来的字符串保存状态位的方式很不满意,对于代码里出现了 state == "1" 这样的状态判断很是不爽.那么理想中的判断是怎样的呢?很简单如你所想枚 ...
- 【Oracle】RAC添加新节点
RAC添加节点: 环境: OS:OEL5.6 RAC:10.2.0.1.0 原有rac1,rac2两个节点.如今要添加rac3节点: 操作过程: 改动三个节点上的/etc/hosts文件 192.16 ...
- 2015腾讯暑期实习生 Web前端开发 面试经历 --作者imwtr
1.现在有100亿个数字大小为1到10亿的数字,在这100亿个数字里边只有一个数字出现的次数是奇数次的,你用什么方法,找出这个数字呢? 答:显然至少要全部过一遍,可以用位运算,遍历数组,最后剩下的数字 ...