zoukankan      html  css  js  c++  java
  • 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: epositorysvnbs

    访问:svn://localhost:3690

    当-r后指定的目录为仓库父目录时则启动的是多个仓库如图:

    启动:svnserve -d -r 仓库父目录  ,表示启动时多仓库

    例如:svnserve -d -r G: epositorysvn

    访问: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: epositorysvnbsconfsvnserve.conf打开

     

    4.更新仓库原有数据的内容:

    格式: svn update

    此上就是用SVN常用到的操作的一些命令,实际开发中我们会使用更快捷的图形化工具

     

     

  • 相关阅读:
    CBR(基于案例的推理)的产生和Roger Schank=Schank教授在他的著作中提出了以“记忆组织包"
    php 设计模式
    php 常用资源
    自然语言处理著作或期刊名称2
    北京师范大学语言学及应用语言学研究生培养方案
    !!! Analysis & Design 很好的汇总+zcl的 UML 体会
    睡眠的方法
    !!!【php100教程】
    机器翻译和自然语言信息处理专业硕士研究生培养方案
    愧薪
  • 原文地址:https://www.cnblogs.com/zwxbky/p/11386296.html
Copyright © 2011-2022 走看看