大家好,又见面了,我是你们的朋友全栈君。
一、Windows下安装SVN
安装过程直接点击下一步即可,不想用默认位置的话,可以更改安装位置。
二、检查安装是否成功
1、检查环境变量中是否自动配置了系统变量。(默认是自动配置的)。
2、安装根目录 其中bin目录下是一些可执行文件(.exe)
3、打开cmd窗口,输入命令 svn –version检查版本号,查看安装是否成功。 由于已经配置了环境变量,所以可以在任何位置使用svn命令。
三、配置SVN
1、配置版本库
①为什么要配置版本库? Subversion 是将文件数据信息保存到版本库中进行管理的, 为了满足用户的不同需求, Subversion 允许用户对版本库目录进行定制。 ②在一个非中文无空格目录下创建一个文件夹,作为版本库的根目录。 例如:D:fourthsoftwareSVN-responsitory ③在版本库根目录下创建与具体项目对应的子目录——这样做的目的是使一个SVN 服务器能够同时管理多个项目,而不是为每一个项目搭建一个SVN 服务器——这显然太浪费资源了。 例如:D:fourthsoftwareSVN-responsitoryTest D:fourthsoftwareSVN-responsitoryERP D:fourthsoftwareSVN-responsitoryOA
命令:svnadmin create D:fourthsoftwareSVN-responsitoryTest
创建成功以后在对应目录下会生成这些文件或文件夹
三、启动SVN服务
启动SVN有两种方式
1、通过命令行启动
svnserve -d -r D:fourthsoftwareSVN-responsitoryTest svnserve 表示命令 -d 表示后台执行 -r 表示版本库根目录 D:fourthsoftwareSVN-responsitoryTest
验证是否启动成功
2、注册windows服务
四、在Eclipse中安装SVN
1、在Eclipse中安装SVN插件
其实就是把插件复制到dropins目录下,当然也可以在线安装 (我这里的sts其实和Eclipse差不多)
2、启动Eclipse,查看是否安装成功
五、在Eclipse中使用SVN
1、准备工作:
启动两个Eclipse,使用不同的工作空间,分别是Tom、Jerry。以此来模拟不同的用户。
2、Jerry创建Java Project
3、提交
右键单击项目– Team– share project
svn 一种协议的格式,类似于http协议 localhost 本地使用,如果是远程需要改成具体ip Test 是SVN服务器上的一个子库
认证失败的原因
打开svnserve.conf这个文件
# anon-access = read 匿名访问
我们将# anon-access = read前面的#去掉,开启匿名访问并且赋予write权限anon-access = write,再次重复上述步骤即可。
# auth-access = write 认证访问
但是通常情况下我们是不允许匿名访问的,这就需要开启认证访问auth-access = write password-db = passwd authz-db = authz passwd、authz分别对应conf目录下的db和authz文件
编辑passwd文件,创建3个用户 Tom = 123456 Jerry = 123456 ceshi = 123456 编辑authz文件 kaifa = Tom,Jerry 表示一个kaifa组的成员有Tom和Jerry [/] 表示访问根目录下的所有文件都需要认证 @kaifa=rw 表示kaifa组有rw权限 ceshi=r 表示用户ceshi有r权限
- = 表示其他用户没有权限
4、Jerry提交
修改后,对应的项目和文件上会有 * ,表示本地和远程服务器上的不一致。 右键单击需要提交的文件或整个项目– 提交,此时需要输入用户名和密码
输入Jerry 123456 点击OK
提交成功后,项目上有提示黄色的标识。
5、Tom检出
点击file – import – SVN
拉取成功。
6、更新
直接在项目上或需要更新的文件上点击 Team – 更新 。
7、版本冲突
版本冲突原因
<1>两个开发人员, Harry 和 Sally, 分别从服务器端下载了文件 A。 <2>Harry 修改之后, A 变成了 A’, Sally 修改之后, A 变成了 A’’。 <3>Harry 先一步提交,使服务器端文件的版本也变成了 A’ <4>Sally 本地的文件 A’’已经过时了, 此时她已无法提交文件,服务器会要求她先进行一次更新操作。 <5>此时 Sally 的更新操作有两种可能 (1)Sally 所做的修改与 Harry 不是同一个位置, 更新操作尝试合并文件成功。 (2)Sally 所做的修改与 Harry 恰好是同一个位置, 更新操作尝试合并文件失败,发生冲突。
Jerry修改后提交成功
Tom修改后提交,失败(版本冲突)
解决方法
在项目上或文件上点击 Team – 更新
这里显示了哪里冲突了 在冲突的文件上点击 Team – 更新
右半部分是别人提交的内容,无法更改,左半部分是自己的可以更改。 我们要做的就是合并不同的内容。 然后保存。之后如果觉得没问题了,点击Team – 标记为解决
此时再去提交即可。
8、时光机(历史版本)
点击 Team – 显示资源历史记录
解决方法
修改svnserve文件
再次点击 Team – 显示资源历史记录
可以双击打开各个版本,想要回到哪个版本就右键单击 Switch to revision x
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/189273.html原文链接:https://javaforall.cn