SVN 简介

Subversion(SVN) 是一个开源的版本控制系統, 也就是说 Subversion 管理着随时间改变的数据。 这些数据放置在一个中央资料档案库(repository) 中。 这个档案库很像一个普通的文件服务器, 不过它会记住每一次文件的变动。 这样你就可以把档案恢复到旧的版本, 或是浏览文件的变动历史。 SVN 的一些概念 repository(源代码库):源代码统一存放的地方 Checkout(提取):当你手上没有源代码的时候,你需要从re...

SVN 安装

在windows下安装 SVN 1、准备svn的安装文件 下载地址:https://sourceforge.net/projects/win32svn/ 2、下载完成后,在相应的盘符中会有一个Setup-Subversion-1.8.16.msi的文件,目前最新的版本是1.8.16, 这里就使用这个版本。然后双击安装文件进行安装。我们指定安装在D:\Program Files (x86)\Subversion目录里。 3、查看目录结构 把svn安装目录里的bin目录添加到path路径中,在命令行窗口中输入 svns...

SVN 生命周期

本章讨论了版本控制系统的生命周期。 创建版本库 版本库相当于一个集中的空间,用于存放开发者所有的工作成果。版本库不仅能存放文件,还包括了每次修改的历史,即每个文件的变动历史。 Create 操作是用来创建一个新的版本库。大多数情况下这个操作只会执行一次。当你创建一个新的版本库的时候,你的版本控制系统会让你提供一些信息来标识版本库,例如创建的位置和版本库的名字。 检出 Checkout 操作是用...

SVN 启动模式

首先,在服务端进行SVN版本库的相关配置 手动新建版本库目录 mkdir /opt/svn 利用svn命令创建版本库 svnadmin create /opt/svn/runoob 使用命令svnserve启动服务 svnserve -d -r 目录 --listen-port 端口号 -r: 配置方式决定了版本库访问方式。 --listen-port: 指定SVN监听端口,不加此参数,SVN默认监听3690 由于-r 配置方式的不一样,SVN启动就可以有两种不同的访问方式 方式一:-r直接指定到...

SVN 创建版本库

使用svn命令创建资源库 [runoob@centos6 ~]# svnadmin create /opt/svn/runoob01 [runoob@centos6 ~]# ll /opt/svn/runoob01/ total 24 drwxr-xr-x 2 root root 4096 2016/08/23 16:31:06 conf drwxr-sr-x 6 root root 4096 2016/08/23 16:31:06 db -r--r--r-- 1 root root 2 2016/08/23 16:31:06 format drwxr-xr-x 2 root root 4096 2016/08/23 16:31:06 hooks drwxr-xr-x 2 root root 4096 2016/08/2...

SVN 检出操作

上一章中,我们创建了版本库runoob01,URL为svn://192.168.0.1/runoob01,svn用户user01有读写权限。 我们就可以通过这个URL在客户端对版本库进行检出操作。 svn checkout http://svn.server.com/svn/project_repo --username=user01 以上命令将产生如下结果: root@runoob:~/svn# svn checkout svn://192.168.0.1/runoob01 --username=user01 A runoob01/trunk A runoob01/branches A runoob01/tag...

SVN 解决冲突

版本冲突原因: 假设 A、B 两个用户都在版本号为 100 的时候,更新了 kingtuns.txt 这个文件,A 用户在修改完成之后提交 kingtuns.txt 到服务器, 这个时候提交成功,这个时候 kingtuns.txt 文件的版本号已经变成 101 了。同时B用户在版本号为 100 的 kingtuns.txt 文件上作修改, 修改完成之后提交到服务器时,由于不是在当前最新的 101 版本上作的修改,所以导致提交失败。 我们已在本地检出 runoob01 库...

SVN 提交操作

在上一章中,我们检出了版本库runoob01,对应的目录放在/home/user01/runoob01中,下面我们针对这个库进行版本控制。 我们在库本版中需要增加一个readme的说明文件。 root@runoob:~/svn/runoob01/trunk# cat readme this is SVN tutorial. 查看工作副本中的状态。 root@runoob:~/svn/runoob01/trunk# svn status ? readme 此时 readme的状态为?,说明它还未加到版本控制中。 将文件readme加到版本...

SVN 版本回退

当我们想放弃对文件的修改,可以使用 SVN revert 命令。 svn revert 操作将撤销任何文件或目录里的局部更改。 我们对文件 readme 进行修改,查看文件状态。 root@runoob:~/svn/runoob01/trunk# svn status M readme 这时我们发现修改错误,要撤销修改,通过 svn revert 文件 readme 回归到未修改状态。 root@runoob:~/svn/runoob01/trunk# svn revert readme Reverted 'readme' 再查看状态。 root@r...

SVN 查看历史信息

通过svn命令可以根据时间或修订号去除过去的版本,或者某一版本所做的具体的修改。以下四个命令可以用来查看svn 的历史: svn log: 用来展示svn 的版本作者、日期、路径等等。 svn diff: 用来显示特定修改的行级详细信息。 svn cat: 取得在特定版本的某文件显示在当前屏幕。 svn list: 显示一个目录或某一版本存在的文件。 1、svn log 可以显示所有的信息,如果只希望查看特定的某两个版本之间...