Eclipse安装SVN插件及使用详细步骤

文章目录

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-blog.csdnimg.cn/20210402105250391.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=sallyssecret

tom=123123

jerry=123123

kate=123123

(4)authz文件

21 [groups]

#用户组=用户,用户....

22 # harry_and_sally=harry,sally

23 # harry_sally_and_joe=harry,sally,&joe

24 kaifa=tom,jerry

30 [/] # 针对版本库根目录进行权限设置

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.maven.apache.org/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效果