SVN的使用01
关于svn的使用以及TortoiseSVN常见操作
一、关于svn介绍
在介绍之前提一下,MyEclipse项目组的建立,以及源文件夹的创建。
新建的那一栏点击other 在搜索栏中搜索Java Working Set就会出来点击创建,填写项目组的名称点击完成!



这样一个项目组就创建完成,可以在项目组中存放多个项目,便于管理!
如何创建多个源文件夹,所谓源文件夹就是用来存放源代码的,默认为src,创建方式,如图点击新建点击创建创建后项目发布时两个源文件夹的内容会整合到一起去



所以称之为源文件夹!
为此这是一点小知识点!
1.svn的介绍
SVN是版本控制的一款软件,常用来管理企业项目,将项目保存到仓库之中便利与多人开发与维护。
什么是版本控制?
版本控制(Revision Control):是维护工程蓝图的标准做法,能追踪工程蓝图从诞生一直到定案的过程。是一种记录若干文件内容变化,以便将来查阅特定版本修订情况的系统。也是一种软体工程技巧,籍以在开发的过程中,确保由不同人所编辑的同一档案都得到更新。
2.我们现在市面上常会用到的几款版本控制的软件
CVS(Concurrent Versions System)代表协作版本系统或者并发版本系统,是一种版本控制系统,方便软件的开发和使用者协同工作。
VSS ( Visual Source Safe )只能在windows下,作为 Microsoft Visual Studio 的一名成员,它主要任务就是负责项目文件的管理
Git是用于Linux内核开发的版本控制工具。它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。Git的速度很快,这对于诸如Linux kernel这样的大项目来说自然很重要。Git最为出色的是它的合并跟踪(merge tracing)能力。官网www.github.org
SVN(Subversion ),是一个开放源代码的版本控制系统,采用了分支管理系统,它的设计目标就是取代CVS。
3.SVN的特点
统一的版本号。CVS是对每个文件顺序编排版本号,在某一时间各文件的版本号各不相同。而Subversion下,任何一次提交都会对所有文件增加到同一个新版本号,即使是提交并不涉及的文件。所以,各文件在某任意时间的版本号是相同的。版本号相同的文件构成软件的一个版本。
原子提交。一次提交不管是单个还是多个文件,都是作为一个整体提交的。在这当中发生的意外例如传输中断,不会引起数据库的不完整和数据损坏。
重命名、复制、删除文件等动作都保存在版本历史记录当中。
对于二进制文件,使用了节省空间的保存方法。(简单的理解,就是只保存和上一版本不同之处)
目录也有版本历史。整个目录树可以被移动或者复制,操作很简单,而且能够保留全部版本记录。
分支的开销非常小。
优化过的数据库访问,使得一些操作不必访问数据库就可以做到。这样减少了很多不必要的和数据库主机之间的网络流量。
支持元数据(Metadata)管理。每个目录或文件都可以定义属性(Property),它是一些隐藏的键值对,用户可以自定义属性内容,而且属性和文件内容一样在版本控制范围内。
支持FSFS和Berkeley DB两种资料库格式。
不足:只能设置目录的访问权限,无法设置单个文件的访问权限。
4.SVN的体系结构如图:

5.关于安装:
在视频的资料里面,有两个安装包,一个是32位安装包,一个是64位安装包,可以自行选择!

安装完成后在cmd里面敲如下代码看是否会有如下效果!如果一样则表示安装成功!注意安装时一般会自动在你环境变量里面配置,如果环境变量里面没有则需要手动去配!

在环境变量里面配置安装目录的位置精确到bin目录

6.创建仓库
格式:cmd> svnadmin create 路径,如图可以发现创建方法有两种,一种是在指定目录下创建仓库,另一种是在当前仓库创建目录

7.启动服务
启动服务分为两种一种为单仓库启动和多仓库启动。
格式:cmd> svnserve -d -r 仓库的路径
-d后台执行
-r 版本库的根目录或父目录
当-r后指定的目录为仓库根目录时则启动的是单个仓库如图:

启动:svnserve -d -r 仓库的根 ,表示启动时单仓库
例如:svnserve -d -r G:\repository\svn\bbs
访问:svn://localhost:3690
当-r后指定的目录为仓库父目录时则启动的是多个仓库如图:

启动:svnserve -d -r 仓库父目录 ,表示启动时多仓库
例如:svnserve -d -r G:\repository\svn
访问:svn://localhost:3690/bbs
8.注册后台服务
我们可以创建后台服务这样就可以方便启动服务
首先注册服务之前先删除原有的服务

删除完成后既可以配置指定的服务

WIN+R输入命令
services.msc 打开“服务”
查看是不是多了一个svn的服务名称,如果配置的是手动开启的话每次则以管理员身份去执行cmd,“net start svn”打开服务
二、SVN的操作:
1.关于SVN的操作思想

2.如何从仓库中取东西
格式:svn checkout 服务器地址 下载地址(如图说明这个仓库里面没有任何值)

3.往仓库中存入数据常常会遇见的几个问题
1.格式:svn commit 资源(存入数据的格式)
问题1:没有纳入版本控制

解决方法:使用add子命令 添加到本地版本库

问题2:没有编写日志

解决方法:采用 -m 参数设置日志信息

问题3:没有权限

解决办法:修改权限,设置匿名访问仓库目录下的子目录conf中 G:\repository\svn\bbs\conf\svnserve.conf打开

4.更新仓库原有数据的内容:
格式: svn update

此上就是用SVN常用到的操作的一些命令,实际开发中我们会使用更快捷的图形化工具
SVN的使用01的更多相关文章
- iOS开发——源代码管理——SVN
一.源代码管理(svn)简介 01. 源代码管理工具概述 ======================================================================= ...
- ubuntu svn安装测试
本机环境 :ubuntu 12.4 LTS desktop 1 sudo apt-get install subversion #安装svn 2 sudo mkdir /home/lzj/s ...
- Visual SVN 5.01 Po jie 笔记
最近搞项目要与几个同事一起coding,鉴于代码的合并和提交的问题,所以要搞个版本管理.由于是私有的项目,所以退git 求SVN了.装了乌龟和Visual SVN,才发现Visual SVN的客户端不 ...
- SVN服务器的搭建 分类: 网络 2014-11-27 01:18 204人阅读 评论(4) 收藏
一.首先来下载和安装SVN服务器 现在Subversion已经迁移到apache网站上了,下载地址: http://subversion.apache.org/packages.html 这是二进制文 ...
- JAVAEE——SSH项目实战01:SVN介绍、安装和使用方法
1 学习目标 1.掌握svn服务端.svn客户端.svn eclipse插件安装方法 2.掌握svn的基本使用方法 2 svn介绍 2.1 项目管理中的版本控制问题 通常软件开发由多人协作开发,如果对 ...
- 最课程阶段大作业之01:使用SVN实现版本控制
版本控制在友军那里都是放在整个培训的最后阶段才开始讲的,但我们打算放到SE阶段.与其匆匆在项目实战阶段弄个半生不熟,然后进入实际工作中接受他人对你的怀疑,不如……早死早超生~~~. 可是,我们毕竟现在 ...
- JAVAEE——SSH项目实战01:SVN介绍、eclipse插件安装和使用方法
1 学习目标 1.掌握svn服务端.svn客户端.svn eclipse插件安装方法 2.掌握svn的基本使用方法 2 svn介绍 2.1 项目管理中的版本控制问题 通常软件开发由多人协作开发,如果对 ...
- 01 svn服务搭建
一:svn服务搭建.(1)首先下载服务端svn: Setup-Subversion-1.6.5.msi(2)下载客户端svn: TortoiseSVN-1.6.6.17493-win32-svn-1. ...
- SVN使用_获取某版本后改动的文件列表
本章将讲解如何通过svn命令获取某版本后改动的所有文件 一键操作,告别svn log的繁杂对比工作. 1:安装SVN命令行工具Subversion(不是TortoiseSVN) 下载Subversio ...
随机推荐
- css沉默
css变色龙实现. ==== css 1 水平居中和垂直居中. 2 css布局方式. 3 你写过UI框架么.
- android手机拍照旋转的问题
android开发中,遇到过手机拍照,明明是竖着拍的,显示的结果却是横这的,困扰了很久,找了很久找了一种解决方法: ExifInterface exifInterface = new ExifInte ...
- rpm | 升级软件包
rpm | 升级软件包 检查已安装包 rpm -qa | grep samba samba-common-3.6.9-164.el6.x86_64 samba-3.6.9-164.el6.x86_64 ...
- if 语句 总结笔记
1.if 语句 语法: if(condition) statement1; else statement2; graph TD A[JAVA考试] -->|几天后| B(收到成绩单) B --& ...
- linux centos7安装mysql8
一.RPM版安装 查看是否有其他版本的数据库,若有,删除干净 非root用户必须要有sudo权限 1.下载mysql相关安装包 https://mirrors.tuna.tsinghua.edu.cn ...
- LAMP环境搭建+配置虚拟域名
Centos下PHP,Apache,Mysql 的安装 安装Apache yum -y install httpd systemctl start httpd 添加防火墙 firewall-cmd - ...
- Bilibili手机端下载的Download文件批量转换为MP4软件【Bilibili_DownVideoToMp4】原创发布
Bilibili手机端下载的Download文件批量转换为MP4软件[Bilibili_DownVideoToMp4]原创发布 起因 Bilibili手机端的视频下载下来只能在手机上看,手机屏幕太小看 ...
- cf912D
题意简述:往n*m的网格中放k条鱼,一个网格最多放一条鱼,然后用一个r*r的网随机去捞鱼,问怎么怎么放鱼能使得捞鱼的期望最大,输出这个期望 题解:肯定优先往中间放,这里k不大,因此有别的简单方法,否则 ...
- EPEL添加与删除
EPEL简介 EPEL的全称叫 Extra Packages for Enterprise Linux,由Fedora社区打造,如它的全称,这是一个为红帽系列及衍生发行版如CentOS.Fedora提 ...
- generalization error
泛化误差 机器学习中的Bias(偏差),Error(误差),和Variance(方差)有什么区别和联系? 准与确的关系 bias 偏差:模型越复杂,模型的偏差越小,方差越小,因此会出现overfitt ...