0.说明
在程序开发的时候会有很多的版本,通过手动备份的方式不紧麻烦而且低效易出错。使用SVN来管理版本会方便很多,虽然有一些学习成本,但是学会使用之后会使得开发更加的高效。
本文介绍如何在本地搭建svn服务器以及在eclpise中使用svn插件来管理源代码。
1.安装本地svn服务器
=> 下载svn本地服务器安装程序:官网下载地址->http://tortoisesvn.net/downloads.html
=> 根据你的OS类型和版本下载对应的程序,本文介绍win32版本。
win32-1.8.8版本快捷下载连接(可使用下载工具)->http://sourceforge.net/projects/tortoisesvn/files/1.8.8/Application/TortoiseSVN-1.8.8.25755-win32-svn-1.8.10.msi
=> 安装到本机。
=> 程序默认语言是english,如果需要其它语言,在上面的网址也能找到语言包。这里是32位简体中文的语言安装包->http://downloads.sourceforge.net/tortoisesvn/LanguagePack_1.8.8.25755-win32-zh_CN.msi?download&crazycache=1
=> 如果程序或者语言包下载不了,可以尝试使用下载工具,或者尝试科学上网。

2.建立版本库
=> 在本地磁盘建立一个空文件夹,作为本地版本库(可以看作是个仓库,里面放各个版本的工程文件)。如新建:F:\SVN\Repository
=> 在Repository上右击->TortoiseSVN->create repository here->然后会弹出对话框告诉你The repository was successfully created.然后还问你要不要创建默认的目录结构(trunk/branch/tags)主干/分枝/标签,可以选择创建,然后会弹出对话框告诉你创建成功。
=> 点击OK关闭对话框。

3.配置用户和权限
=> 打开F:\SVN\Repository\conf,其中的svnserve.conf文件保存服务器的一些设置,passwd文件保存用户名和密码。通过修改这些配置文件来配置用户和权限。
=> 通用说明:1.这些文件可以用任意文本编辑器打开。2.文件内容中以#开头的行都是注释掉的,可以通过去掉#来启用。3.文中的英文内容很清楚的说明了某一项是做什么的,如果不明白可以读一下。
=> 打开svnserve.conf,需要配置的是[general]小节中的三个属性。
anon-access = none
auth-access = write
password-db = passwd
含义是:
未验证用户无任何权限 (如果把none修改为read就是给予读权限)
已验证用户给予写权限 (当然也能读)
指定password-db的位置(账户密码文件的位置,passwd在同目录所以直接写passwd,如果在其它目录,可以加上路径,如password-db = ../account/passwd)
=>  打开passwd文件,设置[users]小节-> 添加一行 admin = admin
含义是:用户名admin,密码admin

4.运行独立服务器
=>  旧版的svn需要用到svnservice.exe,新版改在dos(cmd)操作窗口下用sc命令建立服务器并开启服务。
=>  创建一个批处理文件(.bat),在其中写上:
---------以下--------
REM ===创建svn服务===
sc create svnservice binPath= "C:\Program Files\TortoiseSVN\bin\svnserve.exe --service -r F:\SVN\Repository" DisplayName= "svnservice" depend= Tcpip start= auto
REM ===开启svn服务===
net start svnservice
pause
---------以上--------
含义:binPath路径代表svn的安装目录下的svnserve.exe文件路径;
-r为root的简写,F:\svn\repository是前面配置的版本库路径;
DisplayName是设置svn服务的名称;
start=auto为将svn服务设置成开机启动!
=> 另附:
A. 停止服务
使用"net stop svnservice"停止服务。
B.删除服务
如果服务安装的有问题,你可能需要删除服务。要删除前面添加的服务,只需要运行"sc delete svnservice"。
另:如果出错,提示为 sc openSCManager 错误 5 ,原因是因为权限不足。在运行CMD的时候使用管理员权限,或者运行bat文件时,使用管理员身份。

5.初始化导入
导入需要版本控制的工程文件到svn版本库:
=> 在需要导入的工程文件夹上点右键-> TortoiseSVN-> Import,然后在URL栏中填入svn://localhost/folderName
=> (folderName是随意取的,确定之后,以后svn操作路径就是这条了!),点确定后会让你输入用户名和密码(第3步的设置),输入正确后就会提示文件正在导入.
=> <font color="red">错误处理:如果在这里遇到“由于目标计算机积极拒绝,无法连接”的错误,那么肯定是你的svnserve服务没有开启,执行第4步就好了。</font>
=> 需要注意的是,这里是svn文件库与svn服务是同一台计算机的情况, 所以可用localhost, 其它机器如果要访问svn服务, 应该用svn://svn服务器的IP地址, 例如svn://192.168.1.125

6.导出和提交
=> 在磁盘(你的workspace)中创建一个空的文件夹,用来检出(checkout)版本库中已经提交的最新的代码。例如新建 D:\workspace\myproject
=> 在新建的空文件夹上右击-> SVN  Chcekout-> 然后选择版本库路径(第5步中提交的路径)->点击OK后会看到代码被检出到当前文件夹中,并显示版本号。
=> 修改检出的源文件后,在文件夹上右击,先SVN Update,将版本库中的内容更新到本地,然后SVN Commit,将本地版本提交到版本库中。
=> 提交到版本库中之后,本地文件可以随意删除,在其它地方新建空文件夹,然后就可以从respository中checkout出最新代码。

7.Eclipse中安装svn插件
=> 打开Eclipse->help->Install New Software->add
name:subclipse 1.6.x
url:http://subclipse.tigris.org/update_1.6.x
->OK
=> 选中subclipse,点击finish,一直NEXT直到安装结束。

8.Eclipse中导出/导入项目
=> 在需要导出到版本库中的项目上点右键-> Team-> Share Project-> 选择SVN(如果无效就双击)-> next-> 填入需要导入库的URL,如svn://localhost/
=> 选择一个文件夹名(可以使用工程名),然后选择注释,点击next到finishe。

=> 然后可以在工程上右键->Team->可以选择update或者commit,同步骤6的操作。

9.常见错误解答

=>在Eclipse的Svn资源研究库中创建repository时,可能会出现 **malformedfile,svnserve.conf:12: Option expected
为什么会出现这个错误呢,就是因为subversion读取配置文件svnserve.conf时,无法识别有前置空格的配置文件,所以在第3步的时候,去掉#的时候,应该把#后面的空格也去掉。

SVN本地服务器搭建及在Eclipse中的应用的更多相关文章

  1. linux下搭建svn本地服务器

    在linux下搭建svn本地服务器可以很好的管理自己的代码,具体过程如下: # mkdir svn_local # cd svn_local  # svnadmin create led_diplay ...

  2. Git本地服务器搭建及使用详解

    Git本地服务器搭建及使用 Git是一款免费.开源的分布式版本控制系统.众所周知的Github便是基于Git的开源代码库以及版本控制系统,由于其远程托管服务仅对开源免费,所以搭建本地Git服务器也是个 ...

  3. SVN学习(三)——在Eclipse 中安装和使用SVN客户端插件

    0 基本概念了解 0.1 SVN的工作原理:采取客户端/服务器模式——在服务器的版本库中保存项目文件的各个版本,所有参与协同开发的程序员在自己本地电脑上保存一个工作副本.SVN支持程序员将本地副本更新 ...

  4. SVN版本服务器搭建

    windows:        https://blog.csdn.net/lu1024188315/article/details/74082227 SVN 的下载地址如下 http://torto ...

  5. SVN工具的使用 和在Eclipse中安装GPD插件:(多步审批流,因此选择使用工作流(JBPM)来实现)

    前言 重点解说SVN工具的还原版本号.   1.提交svn之前.要先更新文件.假设更新之后有版本号冲突的话.就线下解决掉冲突,在把该文件标记为已经解决冲突. 正文 使用SVN还原历史版本号 water ...

  6. SVN版本服务器搭建(服务端+客户端)

    原文地址:http://www.cnblogs.com/warrior1988/p/5359084.html 环境:Win7 32 bit SVN简介:程序员在编写程序的过程中,每个程序员都会生成很多 ...

  7. Java web项目搭建系列之一 Eclipse中新建Maven项目

    前提条件: 已经安装好JDK 已经安装好Maven 已经安装好Eclipse 已经安装好Maven插件 在Eclipse中新建Maven项目 [File]→[New]→[Other...] [Mave ...

  8. SVN本地服务器的搭建

    本来一直在研究Git,Github,TortoiseGit,最近一个项目要用到SVN,所有开始着手SVN SVN一般和Tortoise配合使用,windows下一般使用VisualSVN版本 一.安装 ...

  9. 本地服务器搭建服务:svn

    SVN(使用VisualSVN-server)可视化SVN 服务搭建,适合小白:简单又快捷,深入了解命令行方式等高手请移步官网看教程 1.官网 :http://subversion.apache.or ...

随机推荐

  1. 洛谷$P2598\ [ZJOI2009]$狼和羊的故事 网络流

    正解:网络流 解题报告: 传送门! 昂显然考虑最小割鸭$QwQ$,就考虑说每个土地要么属于羊要么属于狼,然后如果一条边上是栅栏一定是相邻两边所属不同. 所以考虑给所有羊向$S$连$inf$,所有狼向$ ...

  2. CSS布局方式--inline-block 布局

    布局其实就是想办法怎样将一些元素横向的排列起来,纵向由于块级元素的存在会自动占据一行. inline-block 元素会占据一行而且可以调整宽高很适合将这些元素排列在一行,而且使用 inline-bl ...

  3. 洛谷P1037 产生数 题解 搜索

    题目链接:https://www.luogu.com.cn/problem/P1037 题目描述 给出一个整数 \(n(n<10^{30})\) 和 \(k\) 个变换规则 \((k \le 1 ...

  4. Web开发学习目录

    1.MyBaits 1.1mybatis学习入门 1.2mybatis学习之CURD 1.3mybatis学习之连接池 1.4mybatis学习之动态SQL 1.5mybatis学习之多表操作 1.6 ...

  5. my_mysql

    ###一键偷懒YUM安装MySQbL### 1.安装mysql数据库 #yum install -y mariadb-server  mariadb 2.登录mysql数据库常用选项 -h:指定服务端 ...

  6. 【Java基础总结】多线程

    1. 实现多线程的两种方式 //第一种:继承Thread类,重写run()方法 class ThreadTest1 extends Thread{ public void run(){ String ...

  7. js字符数组转化为数字数组

    先谈一谈需求,我有一个字符串数组,数组内容是字符类型的数字,需要把字符类型的数字转换为数字类型,找了找资料,发现牛人真是多,把前辈的经验总结一下. 例子 ['1','2','3'] => [1, ...

  8. win10内存泄漏怎么办

    我的电脑莫名的内存占用越来越高,但是实际内存很低 查了很多资料 下边是我找到的最有效的方法: 原因:是系统自带的网络数据监控和和Killer网卡的监控程序冲突,导致 非页面缓存无法释放. 解决方法:解 ...

  9. SpringCloud之Ribbon(四)

    一:Ribbon是什么? Ribbon是Netflix发布的开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起.Ribbon客户端组件提供一系列完善的配置项如连接 ...

  10. CountDownLatch,CyclicBarrier,Semaphore用法

    1.让一些线程阻塞直到另一些线程完成一系列操作后才被唤醒. 2.CountDownLatch主要有两个方法,当一个或多个线程调用await方法时,调用线程会被阻塞.其它线程调用countDown方法会 ...