文章目录
Eclipse安装SVN插件及使用详细步骤一 Eclipse的SVN插件安装及使用1. Subversive的安装2. SVN Connector安装3. 创建资源库位置4. Eclipse工程中忽略文件5. 分享工程6. 常见图标含义7. 检出操作8. 基本操作9. 解决冲突二 分支的使用1. 概念2. 作用3. 目录介绍4. 创建目录5. 创建代码分支6. 切换分支7. 合并分支三 SVN权限管理1. 版本库中的三个配置文件2. 客户端测试四 查看历史记录1. 解决条目不可读问题五 TortoiseSVN操作1. 独立将工程上传到服务器的思路2. 针对 archetype-catalog.xml文件的准备工作3. 操作步骤Eclipse安装SVN插件及使用详细步骤
有关SVN服务器端环境配置请参考另一篇博客
SVN服务器端环境配置
一 Eclipse的SVN插件安装及使用
1. Subversive的安装
(1)安装前① Eclipse→Window→Preferences→Team
② 用户目录下没有Subversion目录
(2)安装过程
① 打开Eclipse应用市场
② 搜索 Subversive
③ 确认安装项目
④ 安装过程
⑤ 确认重启
2. SVN Connector安装
(1)Get Connector
(2)选择要安装的Connector,然后一直下一步
(3)同意协议,点击Finish
(4)点击Install anyway
(5)确认重启
3. 创建资源库位置
(1)目的:让本地 EclipseSVN 插件知道 SVN 服务器的位置 (2)操作步骤① 切换透视图
② 参考吗资源库位置
③ 输入svn服务器的URL地址
④ 效果
4. Eclipse工程中忽略文件
(1)Eclipse特定文件
(2)忽略原因
① 在服务器上最终运行工程完全没有关系
② 开发团队中,并不是所有参与开发的成员都使用相同的 IDE,所以代码文 件之外的 IDE 特定文件有可能有区别。如果这些文件也都上传到 SVN 服务 器,那么很可能产生冲突。不同 IDE 之间可以基于 Maven 的标准目录结 构识别工程。
(3)配置全局范围忽略文件
① 配置文件位置
~\AppData\Roaming\Subversion\config例如:C:\Users\Lenovo\AppData\Roaming\Subversion\config
② 要修改的配置项:把global-ignores的注释打开注意:如果在Eclipse中操作,target目录会自动忽略,如果使用TortoiseSVN则需要追加target目录设置
global-ignores = *.o *.lo *.la *.al .libs *.so *.so.[0-9]* *.a *.pyc *.pyo __pycache__ *.rej *~ #*#.#*.*.swp.DS_Store.settings*/.settings/*.classpath.projecttarget*/target/*
5. 分享工程
(1)工程→右键→Team→ShareProject(2)版本控制工具中选择 SVN (3)选择一个已经存在的资源库位置或新建一个,可以直接点 Finish(工程在 SVN 服务器端的目录名和工程名一致;上传工程目 录的日志使用默认值)![在这里插入图片描述](https://img-/0402105250391.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2hjeXhzaA==,size_16,color_FFFFFF,t_70)(4)确认工程根目录下子目录和文件是否全部上传
6. 常见图标含义
7. 检出操作
(1)在Eclipse中执行Imprort操作
(2)确认资源库位置
(3)找到SVN服务器端工程对应的目录
(4)选择检出方式
(5)点击Finish
(6)转换工程类型
(7)最终效果:目录带上svn图标
8. 基本操作
基本操作都可以在资源→右键→Team→相关菜单项中找到
9. 解决冲突
(1) 冲突文件→右键→Team→EditConflicts (2)比对冲突的内容,并修改为自己满意的内容,关闭界面
(3)标记为已合并
冲突文件→右键→Team→Markasmerged
(4)提交
二 分支的使用
1. 概念
在版本控制过程中,使用多个分支同时推进多个不同功能开发不使用分支开发:人与人之间协作 使用分支开发:小组和小组之间协作
2. 作用
(1)多个功能开发齐头并进同时进行
(2)任何一个分支上功能开发失败,删除即可,不会对其他分支造成影响
3. 目录介绍
(1)trunk:主干
(2)branches:分支
(3)tags:存放项目开发过程中各个里程碑式的代码
4. 创建目录
(1)资源库位置→右键→New…→Folder
(2) 创建各个具体分支的目录
在具体分支目录右键新建即可
5. 创建代码分支
项目→右键→Team→branch…
6. 切换分支
项目→右键→Team→Swith…
7. 合并分支
工程→右键→Team→Merge…
说明:如果两个分支各自都有新内容,需要合并两次才能够让他们内容一致
例如:
分支 1:☆☆☆★★★
分支 2:☆☆☆○○○
分支 1→分支 2:
分支 1:☆☆☆★★★
分支 2:☆☆☆○○○★★★
分支 2→分支 1:
分支 1:☆☆☆★★★○○○
分支 2:☆☆☆○○○★★★
三 SVN权限管理
1. 版本库中的三个配置文件
(1)配置文件目录:/var/svn/repository/pro_oa/conf
(2)svnserve.conf文件:
12 # anon-access=write 匿名访问13 auth-access=write 授权访问20 password-db=passwd 指定设置用户名密码的配置文件 27 authz-db=authz 分配权限的配置文件
(3)passwd文件
[users] #harry=harryssecret #sally=sallyssecrettom=123123 jerry=123123kate=123123
(4)authz文件
21 [groups] #用户组=用户,用户....22 # harry_and_sally=harry,sally 23 # harry_sally_and_joe=harry,sally,&joe 24 kaifa=tom,jerry30 [/] # 针对版本库根目录进行权限设置 31 @kaifa=rw # @组名 = 权限值 32 kate=r # 用户名 = 权限值 33 *= # 上面已经授权的用户以外其他用户没有任何 权限
2. 客户端测试
(1)Eclipse 中删除曾经登录过的用户名密码的操作方式
四 查看历史记录
1. 解决条目不可读问题
到 svnserve.conf 文件中把 anon-access 注释打开设置为 none
8[general] 9###Theseoptionscontrolaccesstotherepositoryforunauthenticated 10###andauthenticatedusers. Validvaluesare"write","read", 11###and"none". Thesamplesettingsbelowarethedefaults. 12anon-access=none 13auth-access=write
让文件回退到某个历史状态
五 TortoiseSVN操作
1. 独立将工程上传到服务器的思路
2. 针对 archetype-catalog.xml文件的准备工作
(1)作用:Maven 生成工程目录结构过程中需要使用的配置文件
(2)下载地址 :http://repo./maven2/archetype-catalog.xml
(3) 复制到 Maven 的本地仓库
Maven 本地仓库根目录\org\apache\maven\archetype\archetype-catalog[版本号目录]
3. 操作步骤
(1)打开资源库浏览器
(2)在 SVN 服务器上创建目录
(3)检出新建的目录
(4)执行Maven命令
mvnarchetype:generate 命令参数含义
mvn archetype:generate -DgroupId=com.atguigu.subversion -DartifactId=rich -DarchetypeArtifactId=maven-archetype-quickstart-DinteractiveMode=false -DarchetypeCatalog=local-X mvn archetype:generate -DgroupId=com.atguigu.subversion -DartifactId=rich_web -DarchetypeArtifactId=maven-archetype-webapp-DinteractiveMode=false -DarchetypeCatalog=local-X
(5)导入Eclipse效果