当前位置:文档之家› Linux下SVN安装配置记录

Linux下SVN安装配置记录

Linux下SVN安装配置记录
Linux下SVN安装配置记录

1.Linux下SVN安装配置记录

Linux下SVN安装配置记录

上周配了个svn服务器,过程很是辛苦,因为网上资料很乱,不完整,查阅了大量资料之后,终于配好了。分享一下,希望后来者少走弯路。

第一章安装

1. 采用源文件编译安装。源文件共两个,为:

subversion-1.6.1.tar.gz (subversion 源文件)

subversion-deps-1.6.1.tar.gz (subversion依赖文件)

注意文件版本必须一致,否则很容易产生各种奇怪的问题.

2. 上传以上两个文件到服务器上,解压。解压命令为:

tar xfvz subversion-1.6.1.tar.gz

tar xfvz subversion-deps-1.6.1.tar.gz

指令简介:tar 为解压命令,xfvz为tar命令的参数,用于解压tar.gz格式压缩的文件。

3. 解压后生成 subversion-1.6.1 子目录,两个压缩包解压后都会自动放到此目录下,不用手动更改。

4. 进入解压子目录:

cd subversion-1.6.1

5. 执行 ./configure --prefix=/opt/subversion 进行配置设定并指明安装目录. 注意prefix前是两个减号. 默认不带BDB包, 所以默认使用的是FSFS模式. 若想使用BDB模式需另外下载BDB包.建议使用FSFS模式.两种模式比较参考以下链接:

https://www.doczj.com/doc/7915097403.html,/show-21-1.html

指令简介:configure命令用于检查安装平台和目标特征,prefix用于指定路径。

6. 执行 make 编译.

7. 执行 make install 安装.

8. 添加环境变量:

vi /etc/profile

在文件最后加入:

SVNPATH=$PATH:/opt/subversion/bin

export SVNPATH

9. 测试SVN是否安装成功,执行:

svnserve --version

如果显示版本信息, 则安装成功. (如果没有安装svnserve,请先安装apt-get install subversion)

第二章配置

本系统采用为每个项目单独建一版本库的策略。配置文件,密码文件,访问控制文件等都放在版本库的conf目录下。所以每次开始一个新项目都必须新建一个版本库,并重新配置各配置文件。还有很重要的一条,要求各组员重新配置客户端,包括服务器版本库路径,本地路径等信息。

1. 建立版本库目录(可建立多个,新建库后以下各项都需重新配置。注意区别安装目录与版本库目录,以下讲的都是版本库目录)

mkdir –p /opt/svndata/repos

2. 建立svn版本库(与上面目录对应)

svnadmin create /opt/svndata/repos

执行此命令后svn自动在repos目录下添加必须的配置文件.

注意:版本库不同于一般的文件夹, 直接在操作系统上新建文件无法被SVN识别, 必须使用import等命令将文件导入版本库.

此为svn内部指令,create用于新建版本库。请使用svn help查看详细说明。

3. 修改版本库配置文件

vi /opt/svndata/repos/conf/svnserve.conf

各参数功能在配置文件的注释中有说明, 此处配置如下:

[general]

anon-access = none # 使非授权用户无法访问

auth-access = write # 使授权用户有写权限

password-db = /opt/svndata/repos/conf/pwd.conf # 指明密码文件路径

authz-db = /opt/svndata/repos/conf/authz.conf # 访问控制文件

realm = /opt/svndata/repos # 认证命名空间,subversion会在认证提示里显示,并且作为凭证缓存的关键字。

其它采用默认配置. 各语句都必须顶格写, 左侧不能留空格, 否则会出错.

其中pwd.conf 与 authz.conf 在新建版本库时系统不会自动创建,需要自己创建。

指令简介:这是svn配置文件的格式,请按照以上格式书写。

4. 配置用户

vi /opt/svndata/repos/conf/pwd.conf

输入以下内容:

[users]

username1 = password1

username2 = password2

可以添加多个,此为用户名密码对。

5. 配置权限

vi /opt/svndata/repos/conf/authz.conf

指令简介:此配置文件采用“基于路径的授权”策略,中括号里指定路径,以下列出对各用户的授权。包括只读r,读写rw。没有列出的用户,则不允许访问。

还可以对用户分组,具体请参考svn手册,以下是简单例子:

[/opt/svndata/repos]

user1 = rw

user2 = r

6. 使用import导入文件

新建好的版本库是空的,需要导入工作目录。

$ svnadmin create /usr/local/svn/newrepos

$ svnimport mytree file:///usr/local/svn/newrepos/some/project

但是在导入后,用来的目录树并没有转换成工作拷贝,为了开始工作,还是需要运行svn checkout导出一个工作拷贝。因为导入后,文件在版本库中是以特殊的形式存在db文件夹中的,不能以明文的方式查看。必须使用svn checkout 导出工作副本才能以正常方式查看。

7. 启动服务

执行svnserve –d –r /opt/svndata/repos/ 启动服务, 以deamon方式运行。

本系统采用svnserve方式, 这是小团队项目的推荐方法. 这种方法维护最少, 配置最简单.

指令简介:此指令用于启动svn服务,-d指明以守护模式运行,svn自动在3690端口监听。3690是默认端口,可以使用“--listen-port=”或者

“--listen-host=”来指定其它端口。-r选项用来指定svn服务的根目录,这样用户就可以使用相对路径访问,而不用提供完整路径。

使用以下命令检出:(svnserver方式)

svn checkout svn://127.0.0.1/dir

以上为示例。IP需要根据具体情况调整,dir为版本库路径,若在启动时已指定则可省略。

版本库信息在版本库文件夹里,所以要删除版本库只需要删除版本库所在的文件夹即可。

另外工作副本只是自己维护的文件夹,可以用Windows直接删掉,对别人没有影响。千万不要使用版本库的删除命令,否则版本库里的内容也会被删除。

LINUX下SVN安装

环境 1. 安装Apache 2.2.14 2. 安装Subversion 1.6.6 3. 安装后的系统设置 4. Apache设置 5. svn库的配置 6. 运行SVN服务器 Created by okala at 2009-12-25 环境: Red Hat Enterprise Linux Server release 5.3 (Tikanga) httpd-2.2.14.tar.gz subversion-1.6.6.tar.gz 到官网https://www.doczj.com/doc/7915097403.html,/ 下载当前最新的稳定版本subversion-1.6.6.tar.gz 到官网https://www.doczj.com/doc/7915097403.html,/ 下载当前最新的稳定版本httpd-2.2.14.tar.gz 1. 安装Apache 2.2.14 用root账号执行以下命令: 引用 tar zxf httpd-2.2.14.tar.gz #解压到当前目录 引用 cd httpd-2.2.14 #进入解压后的目录 引用

./configure --prefix=/local/svnroot/apache2 --enable-so --enable-mods-shared=all --enable-dav=share --enable-dav-fs --with-ldap --enable-ldap --enable-authnz-ldap --enable-authn-alias #定义安装的目标路径(可据自己需要修改),使能LDAP 引用 make #编译 引用 make install #安装 引用 /local/svnroot/apache2/bin/apachectl start #启动Apache 用IE访问以下网址,http://hostIP/,如果提示It works!,则Apache安装成功。 然后就可以先停止Apache了: 引用 /local/svnroot/apache2/bin/apachectl stop #停止Apache 2. 安装Subversion 1.6.6 用root账号执行以下命令: 引用 tar zxf subversion-1.6.6.tar.gz #解压到当前目录 引用 cd subversion-1.6.6

linux下搭建svn服务器(doc 8页)

linux下搭建svn服务器(doc 8页)

Linux下搭建SVN服务器环境(svnserve方式) 环境:redhat5(apr.apr-util.zlib.subversion的压缩文件都是放在/usr/linuxsvn目录下,下面的解压命令tar zvxf解压出来的文件就直接是放在这个目录下,文件名跟压缩文件的名字是一样的) 一、安装apr、apr-util跟zlib 1、下载apr、apr-util与zlib apr-1.3.3.tar.gz apr-util-1.3.4.tar.gz zlib-1.2.3.tar.gz openssl-0.9.8k.tar.gz httpd-2.2.9.tar.bz2 libxml2-2.7.3.tar.gz 2、解压 tar zvxf apr-1.3.3.tar.gz

打开浏览器输入http://服务器ip 如果出现 It Works! Apache安装成功 如果出现这个错误Invalid command 'AuthDigestProvider', perhaps misspelled or defined by a module not included in the server configuration /usr/local/apache2/conf/extra/httpd-dav.conf 提示这个文件31行有问题,那么你就 Vi /usr/local/apache2/conf/extra/httpd-dav.conf 找到31行,把这个注释掉# AuthDigestProvider file 这样就ok了! cd openssl-0.9.8k ./config --prefix=/usr/local/ssl/ make make install cd libxml2-2.7.3 vi INSTALL ./configure --help ./configure make make install cd openssl-0.9.8k ./config ./config -t

SVN命令使用手册

SVN命令使用手册修改版本记录 M:修改A:添加D:删除

SVN命令使用 一、常用命令 1.Svnadmin create创建库 svnadmin create path 在windows版本上: D:\>svnadmin create test2 D:\> 通过dir来列出目录中文件,已经包含test2,如图1所示: 图1 说明此时已经成功建立 2.Svn import导入项目 svn import project_path svn_lib_path -m “comment” 举例: 假设有一个工程名称unismg,代码的文件目录是unicom; A、我们在D盘新建目录unismg,在此目录下新建三个文件目录,如图2所示: 图2

trunk中存放的是项目主线;branches中存放源码分支;tags存放在开发过程中做的标签。 B、我们将代码unicom放到d:\unismg\trunk\中 C、执行命令D:\>svn import d:\unismg file:///d:/test2/unismg -m "initial import unismg" 结果如图3所示: 图3 这样我们就将工程代码导入svn库中管理。此时删除D:\>unismg目录也没有关系,因为你的源代码已经在SVN库中管理了。 有人会有疑问,为什么我到test2目录中去找*.c文件怎么一个没有找到啊,是的SVN 管理代码,并不是简单的保存文件,而是利用bdb管理的,所以你看不到源码存在。 之后你可以使用后续的命令来工作了。 多说一句,关于svn_lib_path的几种形式: file:///直接版本访问(本地磁盘) http://通过配置subversion的Apache服务器的WebDAV协议 https://与http://相似,只不过增加了ssh协议 Svn://通过svnserver服务自定义的协议 Svn+ssh://与svn://相似,但是通过SSH协议封装 比如,联通在信网关在30.251linux服务器上,使用的是svnserver服务自定义的协议,那么,导入工程代码时应采用的命令是: svn import $path/proj/unismg svn://192.168.30.251:3482-m "initial import unismg" 3.Svn co: 将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 简写:svn co 举例: svn co svn://192.168.30.251:3482/trunk/unicom 下面信息就是从库中下载的代码信息。

UNIX LINUX开发环境使用SVN方法探讨

Unix&Linux开发环境使用SVN方法探讨一、 DAS现有的工作模式: 二、使用SVN的工作方式

三、DAS开发环境 DAS系统的开发环境种类多,常用到有Solaris、AIX、HP-UX、Redhat等,SVN命令行支持所有的开发平台,可以通过SVN命令快速执行操作。也可以通过JAVA的方式,运行在Eclipse或者第三方图形工具。 SVN支持平台列表 四、SVN客户端常用命令简介: 1、检出 svn co http://路径(目录或文件的全路径)[本地目录全路径] --username用户名--password密码svn co svn://路径(目录或文件的全路径)[本地目录全路径] --username用户名--password密码 svn checkout http://路径(目录或文件的全路径)[本地目录全路径] --username用户名 svn checkout svn://路径(目录或文件的全路径)[本地目录全路径] --username用户名 注:如果不带--password参数传输密码的话,会提示输入密码,建议不要用明文的--password 选项。 其中username与password前是两个短线,不是一个。 不指定本地目录全路径,则检出到当前目录下。 例子: svn co svn://192.168.0.3/测试工具/home/testtools--username wzhnsc svn co http://192.168.0.3/test/testapp --username wzhnsc svn checkout svn://192.168.0.3/测试工具/home/testtools--username wzhnsc svn checkouthttp://192.168.0.3/test/testapp --username wzhnsc 2、导出(导出一个干净的不带.svn文件夹的目录树) svn export[-r版本号] http://路径(目录或文件的全路径) [本地目录全路径] --username用户名 svn export[-r版本号] svn://路径(目录或文件的全路径) [本地目录全路径] --username用户名 svn export本地检出的(即带有.svn文件夹的)目录全路径要导出的本地目录全路径注:第一种从版本库导出干净工作目录树的形式是指定URL, 如果指定了修订版本号,会导出相应的版本, 如果没有指定修订版本,则会导出最新的,导出到指定位置。 如果省略本地目录全路径,URL的最后一部分会作为本地目录的名字。

linux搭建svn服务器

Linux下SVN服务器搭建 一、下载软件: 所需软件: subversion-1.6.19.tar.bz2 apr-1.4.6.tar.bz2 apr-util-1.5.1.tar.bz2 sqlite-amalgamation-3.6.13.tar.gz sqlite比较新的版本这个后面会用到 TortoiseSVN-1.6.16.21511-x64-svn-1.6.17.msi(Windows 64位客户端软件) TortoiseSVN-1.6.16.21511-x86-svn-1.6.17.msi(Windows 32位位客户端软件) 二、开始安装: localhost ~ # tar vjxf apr-1.4.6.tar.bz2 localhost ~ # cd apr-1.4.6 localhost apr-1.4.6 # ./configure localhost apr-1.4.6 # make localhost apr-1.4.6 # make install localhost ~ # tar vjxf apr-util-1.5.1.tar.bz2 localhost ~ # cd apr-util-1.5.1 localhost apr-util-1.5.1 # ./configure –with-apr=/usr/local/apr/ localhost apr-util-1.5.1 # make localhost apr-util-1.5.1 # make install localhost ~ # tar vzxf sqlite-amalgamation-3.6.13.tar.gz localhost ~ # cd sqlite-3.6.13

linux-SVN的介绍及使用方法

一、Linux-SVN的介绍及使用方法 1. SVN简介 SVN 是subversion简称,是一个开源的版本控制系统。我们在解bug过程中主要用于对解决某个bug而引起代码变动的情况(俗称patch)的提交,系统集成组在某一时间会取出SVN中一定阶段内提交的patch进行集成,从而更新系统的版本。 linux系统中安装svn,主要使用命令apt-get install subversion 2. SVN使用 2.1 从SVN服务器拷贝svn目录 命令:$ svn co http://255.255.255.255(IP地址)/svn/ 可先登录http://255.255.255.255/svn,输入用户名和密码(需在管理员处开通相应上传下载权限) ①svn add命令 用于将patch提交至本地版本库(加入版本控制),还未提交至远程服务器,不会更改远程(http://255.255.255.255/svn/)上的内容。另外,svn revert是撤销此次添加(这里不常用)。 $ svn add 007_fix_name_issue_000000.patch 该命令执行后,终端显示情况如下: ②svn commit命令 将本地版本中添加的文件上传到远程服务器上,更新服务器上的内容。 $ svn commit 007_fix_name_issue_000000.patch -m "fix name issue (as an example)" 其中-m 表示-message,“”中的内容表示该patch具体修改问题的描述信息,描述信息必不可少!有助于后续patch提交与否的验证。 该命令执行后,终端显示情况如下:

Vmware_linux_CentOS-6.6系统上安装SVN服务器端的方法及步骤

CentOS 6.6系统上安装SVN服务器端的方法及步骤 SVN其实就是Subversion,分为服务器端和客户端。之前在网上搜了很多方法,都有各种问题,经过自己搜集整理以及实际尝试,总算有个比较靠谱的方法。本文主要介绍CentOS 6.6系统上安装SVN服务器端的方法及步骤。 系统环境说明如下: 操作系统:Centos6.6 x86-64 SVN: subversion-1.8.11 1、检查是否安装了低版本的SVN rpm -qa | grep subversion 如果已安装SVN,则会返回版本信息,如:subversion-1.6.11-9.el6_4.i686 卸载旧版本SVN yum remove subversion 2、安装SVN yum –y install subversion 3、检查安装是否成功 svnserve --version 返回值: svnserve, version 1.8.11 compiled Jul 23 2013, 21:32:09 on i686-pc-linux-gnu Copyright (C) 2013 The Apache Software Foundation. This software consists of contributions made by many people; see the NOTICE file for more information. Subversion is open source software, see https://www.doczj.com/doc/7915097403.html,/ The following repository back-end (FS) modules are available: * fs_fs : Module for working with a plain file (FSFS) repository. Cyrus SASL authentication is available. 4、代码库创建 mkdir -p /opt/svn/repositories svnadmin create /opt/svn/repositories 执行上面的命令后,自动建立repositories库,查看/opt/svn/repositories 文件夹发现包含了conf,db,format,hooks,locks, README.txt等文件,说明一个SVN库建立完成。 5、配置代码库 进入上面生成的文件夹conf下,进行配置

linux下svn管理员手册

1.安装apr tar xvfz apr-0.9.17.tar.gz ./configure 2.安装apr-util tar xvfz apr-util-0.9.15.tar.gz ./configure --with-apr=/usr/local/apr/ 3.安装subversion-1.5.3 ./configure --prefix=/usr/local/svn --with-apr=/usr/local/apr/ --with-apr-util=/us r/local/apr-util/ 4.创建库文件所在的目录 mkdir /export/svncheck/ 创建版本库 mkdir /export/svncheck/版本库名 /usr/local/svn/bin/svnadmin create /export/svncheck/版本库名 5.启动SVN /usr/local/svn/bin/svnserve -d -r /export/svncheck/ 配置用户和权限 创建项目库同时也会建立自己的权限配置文件,权限配置目录: /export/svncheck/版本库名/conf/ 1. 修改svnserve.conf: # auth-access = write # password-db = passwd 改为:(将#和空格去掉) auth-access = write //通过验证的用户才能有读写的权限 password-db = passwd //验证用户所使用的文件passwd 2. 添加用户 修改同目录的passwd文件 [users] admin = 123456 //以名值的方式存储用户名和密码“用户名 = 密码” 3. 设置访问权限 修改同目录下的authz文件来设置访问权限 在[groups]下创建用户组例如这里是: [groups] Admin=admin Developer=developer1,developer2 以上便创建了两个用户组,分别是admin和developer和其相应的组的成员。 设置访问路径 [/] *=r @admin=rw

svn常用命令详解

一.SVN导出(check out 和export的区别) 1.check out跟check in对应,export跟import对应; 2.check out导出获得文件后,导出的文件仍处于SVN版本控制中,与版本库保持关 联,比如你可以进行Svn Update或者Svn Commit操作。同时导出文件夹下有一个.svn的隐藏文件夹,存储着一些版本的元数据信息。 3.export 简单导出一个版本的数据,导出的文件脱离SVN版本控制,修改后无进行 Update和Commit操作。导出文件夹下没有.svn目录。 二.linux下svn命令大全 1、将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 简写:svn co 2、往版本库中添加新的文件 svn add file 例如:svn add test.php(添加test.php) svn add*.php(添加当前目录下所有的php文件) 3、将改动的文件提交到版本库 svn commit -m “LogMessage“[-N][--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关)

例如:svn commit -m “add test file for my test“test.php 简写:svn ci 4、加锁/解锁 svn lock -m “LockMessage“[--force] PATH 例如:svn lock -m “lock test file“test.php svn unlock PATH 5、更新到某个版本 svn update -r m path 例如: svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。 svn update -r 200 test.php(将版本库中的文件test.php还原到版本200) svn update test.php(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit) 简写:svn up 6、查看文件或者目录状态 1)svn status path(目录下的文件和子目录的状态,正常状态不显示) 【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】 2)svn status -v path(显示文件和子目录状态) 第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改

linux下搭建SVN服务器(局域网可用)-ver1.01

Linux SVN 搭建(ubuntu 10.04) 1、安装subversion软件 sudo apt-get install subversion 2、建立一个目录作为SVN代码库管理的根目录(例:/home/svnadmin/svnsources/),只是一个普通目录,实际上是通过svnserve –d –r /home/svnadmin/svnsources/启动服务后暴露给网内其它机器的一个服务接入点: mkdir /home/svnadmin/svnsources/ 3、在SVN代码库管理的根目录下(/home/svnadmin/svnsources/)下建立一个代码库(repo),名称为testrepo: svnadmin create /home/svnadmin/svnsources/testrepo 4、启动svn自带的svnserve服务供网内其它计算机使用: svnserve -d -r /home/svnadmin/svnsources 此时便可以在局域网中通过svn://192.168.0.142/testrepo来访问testrepo这个代码库的内容了注:可以加--listen-port参数来指定端口(默认为3690),如: svnserve -d --listen-port 3691 -r /home/svnadmin/svnsources启动服务 然后在局域网中通过svn://192.168.0.142:3691/testrepo来进行访问 5、建立一个目录(例:/home/gli/projectImport),把代码放置到主干(trunks)下,如project 为一份需要管理的代码: projectImport |--branches |--tags |--trunks |--project 注:这个并不是必须的,只是采用这种结构管理代码是比较合理的一种方式 6、然后将这个目录(/home/gli/projectImport)导入到testrepo中去管理: svn import -m"init testrepo" /home/gli/projectImport/ file:///home/svnadmin/svnsources/testrepo/ 7、拉出一个分支来进行开发(svn copy source destination): svn copy -m"init from trunks" file:///home/svnadmin/svnsources/testrepo/trunks/project file:///home/svnadmin/svnsources/testrepo/branches/project 注:其中source可以是本地工作副本,destination为代码库中的URL 8、当开发到一个稳定版本后或某个阶段后,需要打一些标签(tags)以方便管理: svn copy -m"init from trunks" file:///home/svnadmin/svnsources/testrepo/branches/project file:///home/svnadmin/svnsources/testrepo/tags/project 9、若有另一个项目需要管理,可重复步骤5到8来进行开发管理。

linux下svn的配置及svn常用命令

SVN是Subversion的简称,是一个开放源代码的版本控制系统,svn服务器有两种运行方式:独立服务器和借助apache运行。右图是一个svn的工作流程,它可以很方便用户的代码编写。 1.首先安装SVN:”sudo apt-get install subversion”. 查看svn的版本和确定是否安装成功:”svnserve –version”. 2.创建svn仓库:“svnadmin create msm”,其中msm是版本仓库的名字,仓库建立好了以后会有出现一个仓库名字的文件夹,文件夹下面有conf等几个目录和文件.接下来就需要设置版本仓库的权限了。这里说明一下:版本库之间是独立的。(下图为msm的目录) 3.增加用户 修改conf文件夹下的authz文件,该配置文件采用”基于路径授权”的策略,中括号里指定路径,以下列出对各用户的授权。包括只读r,读写rw。没有列出的用户,则不允许访问。还可以对用户分组,列子如下 用户组格式: [groups]<用户组名>=<用户1>,<用户2>其中,1个用户组可以包含1个或多个用户,用户间以逗号分隔。版本库目录格式: [<版本库>:/项目/目录]@<用户组名>=<权限><用户名>=<权限>, 其中,方框号内部分可以有多种写法: /,表示根目录(仓储目录)及以下。根目录是svnserve启动时指定的,我们指定/opt/svndata。这样,/就是表示对全部版本库设置权限。权限主体可以是用户组、用户或*,用户组在前面加@,*表示全部用户。权限可以是w、r、wr和空,空表示没有任何权限。 下图是我增加的用户组:(注意:等号后留有空格) 增加后:

常用linux svn命令

linux下svn客户端常用命令: 1.svnadmin create path创建一个新的版本库,(path为你想创建版本库的目录路径,如创建版本库目录为cellsms:svnadmin create /home/c7mon/svn/cellsms)。 2.svn mkdir URL 创建目录,向版本库新添加一个目录,(立即提交,所以需要日志信息):如新增trunk目录:svn mkdir file:///home/c7mon/svn/cellsms/trunk -m "此目录的说明信息"。 svn mkdir newdir在工作拷贝下新建一个目录,如新增hello目录,即在工作拷贝(svn checkout数据的目录下):svn mkdir hello。 3.svn import URL向版本库导入数据,需要日志信息。如导入当前目录下wwm目录到版本库trunk目录中:svn import file:///home/c7mon/svn/cellsms/trunk/wwm -m "日志说明信息" 4.svn checkout URL导出一个工作拷贝,cd到你要存放导出数据的目录,如导出wwm 目录:svn checkout file:///home/c7mon/svn/cellsms/trunk/wwm,或svn checkout svn://192.168.3.33/home/c7mon/svn/cellsms/trunk/wwm。svn://方式需要用户名和密码,(svn co为svn checkout简写)。 5.svn commit 提交工作拷贝的修改到版本库中,如对wwm下的文件进行修改后提交:svn commit -m "",""可以为空,最好加上日志说明。svn ci 为其简写。 6.svn add file/dir新添加的文件或目录,此处dir为linux命令mkdir在工作拷贝下创建的目录,不是svn mkdir命令创建的目录,所以需要svn add预订添加。svn add需要在工作拷贝下执行,如在4中svn co出的工作拷贝目录wwm下新添加了hehe.c:svn add hehe.c。然后执行svn commit提交到版本库。 7.svn copy URL URL完全的服务器端拷贝,通常用在分支和标签。如wwm项目完成后发布版本wwm_1.0: svn copy file:///home/c7mon/svn/cellsms/trunk/wwm file:///home/c7mon/svn/cellsms/trunk/tags/wwm_1.0 -m "it's the wwm_1.0 for anhui" 。或svn copy svn://192.168.3.33/home/c7mon/svn/cellsms/trunk/wwm svn://192.168.3.33/home/c7mon/svn/cellsms/trunk/tags/wwm_1.0 -m "it's the wwm_1.0 for anhui"。(tags目录需提前在版本库中建好。) 如果wwm_1.0版本出现BUG,可以拷贝tags目录下的wwm_1.0到建好的branches目录下,然后svn co 出branches下的wwm_1.0进行修改。这样trunk目录下的wwm可以继续进行开发,而不会与branches下1.0版本的修改产生冲突。当branches下的wwm_1.0版本修复bug后,可以使用svn merge命令,将修改的部分合并到trunk下的wwm工程中。 8.svn list URL 显示path目录下的所有属于版本库的文件和目录(简写svn ls) 如列出cellsms下目录信息:svn list svn://192.168.3.33/home/c7mon/svn/cellsms

linux下svn升级

linux下svn升级 环境: 操作系统:RHEL 5.4 x86_64 SVN版本:1.4.2->1.8.8 一、检查安装包 我采用的是目前当前网站发布的版本:subversion-1.8.8 首先,需要安装预先安装六个组件,你的subversion才能正常工作。 apr-util、 apr、pcre、scons 、serf、sqlite-amalgamation -本文假定apahce已经安装! -系统在默认情况下,是已经有apr-util及apr这两个包的,只不过他们的版本较低,只支持subversion 1.4 因此,具体可以看看: # rpm -qa | grep apr apr-util-1.2.7-7.el5_3.2 apr-util-1.2.7-7.el5_3.2 apr-1.2.7-11.el5_3.1 xorg-x11-drv-dynapro-1.1.0-2 apr-1.2.7-11.el5_3.1 而subversion要求较高的版本,为此,我们需要删除系统自带的apr,apr-util 这两个包,强行删掉! # rpm -e --allmatches apr-util error: Failed dependencies: libaprutil-1.so.0()(64bit) is needed by (installed) subversion-1.4.2-4.el5_3.1.x86_64 libaprutil-1.so.0()(64bit) is needed by (installed) httpd-2.2.3-31.el5.centos.x86_64 libaprutil-1.so.0 is needed by (installed) subversion-1.4.2-4.el5_3.1.i386 # rpm -e --allmatches apr-util --nodeps # rpm -e --allmatches apr --nodeps .

Linux下SVN命令使用大全

Linux下SVN命令使用大全 版本号V0.1 修订内容 详细修订日期文件性质 备注正在继续添加和完善... 1、将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1/pro/domain 简写:svn co 2、往版本库中添加新的文件、目录或符号链 svn add PATH... 例如:svn add test.php(添加test.php) svn add *.php(添加当前目录下所有的php文件) ●文件、目录或符号链到你的工作拷贝并且预定添加到版本库。它们会在下次提交上传并添加到版本库,如 果你在提交之前改变了主意,你可以使用svn revert取消预定。 ●是否访问版本库否 ●选项 --targets FILENAME --non-recursive (-N) --quiet (-q) --config-dir DIR --no-ignore --auto-props --no-auto-props --force ●例子 添加一个文件到工作拷贝: $ svn add foo.c A foo.c 当添加一个目录,svn add缺省的行为方式是递归的: $ svn add testdir A testdir

A testdir/a A testdir/b A testdir/c A testdir/d 你可以只添加一个目录而不包括其内容: $ svn add --non-recursive otherdir A otherdir 通常情况下,命令svn add *会忽略所有已经在版本控制之下的目录,有时候,你会希望添加所有工作拷贝的未版本化文件,包括那些隐藏在深处的文件,可以使用svn add的--force递归到版本化的目录下:$ svn add * --force A foo.c A somedir/bar.c A otherdir/docs/baz.doc … 3、将改动的文件提交到版本库 svn commit -m ―LogMessage― [-N] [--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock 开关) 例如:svn commit -m ―add test file for my test― test.php 简写:svn ci 4、加锁/解锁 svn lock -m ―LockMessage― [--force] PATH 例如:svn lock -m ―lock test file― test.php svn unlock PATH 5、更新到某个版本 svn update -r m path 例如: svn update如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。 svn update -r 200 test.php(将版本库中的文件test.php还原到版本200) svn update test.php (更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svn resolved,最后再提交commit)

LINUX SVN客户端使用方法介绍

svnaddvalues/strings.xml//--添加 svnst//--查看状态 svnci//--提交svnci-msvnci,permission 1、将文件checkout到本地目录 svncheckoutpath(path是服务器上的目录) 例如:svncheckoutsvn://192.168.1.1/pro/domain 简写:svnco 2、往版本库中添加新的文件 svnaddfile 例如:svnaddtest.php(添加test.php) svnadd*.php(添加当前目录下所有的php文件) 3、将改动的文件提交到版本库 svncommit-mLogMessage[-N][--no-unlock]PATH(如果选择了保持锁,就使用--no-unlock开关) 例如:svncommit-maddtestfileformytesttest.php 简写:svnci 4、加锁/解锁 svnlock-mLockMessage[--force]PATH 例如:svnlock-mlocktestfiletest.php svnunlockPATH 5、更新到某个版本 svnupdate-rmpath

例如: svnupdate如果后面没有目录,默认将当前目录以及子目录下的所有文件都更新到最新版本。 svnupdate-r200test.php(将版本库中的文件test.php还原到版本200) svnupdatetest.php(更新,于版本库同步。如果在提交的时候提示过期的话,是因为冲突,需要先update,修改文件,然后清除svnresolved,最后再提交commit) 简写:svnup 6、查看文件或者目录状态 1)svnstatuspath(目录下的文件和子目录的状态,正常状态不显示) 【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】 2)svnstatus-vpath(显示文件和子目录状态) 第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人。 注:svnstatus、svndiff和svnrevert这三条命令在没有网络的情况下也可以执行的,原因是svn在本地的.svn中保留了本地版本的原始拷贝。 简写:svnst 7、删除文件 svndeletepath-mdeletetestfle 例如:svndeletesvn://192.168.1.1/pro/domain/test.php-mdeletetestfile 或者直接svndeletetest.php然后再svnci-m'deletetestfile‘,推荐使用这种 简写:svn(del,remove,rm) 8、查看日志 svnlogpath 例如:svnlogtest.php显示这个文件的所有修改记录,及其版本号的变化

Linux下SVN全量与增量备份shell脚本

#!/bin/sh ##Subversion的安装目录及执行文件 SVN_HOME=/usr/local/subversion/bin SVN_ADMIN=$SVN_HOME/svnadmin SVN_LOOK=$SVN_HOME/svnlook SVN_BACK=/home1/svnbackups/full ##配置库根目录 SVN_REPOROOT=/home1/svnroot/hxz ##增量备份文件存放路径 date=$(date '+%Y-%m-%d') RAR_STORE=$SVN_BACK/$date if [ ! -d "$RAR_STORE" ];then mkdir -p $RAR_STORE fi ##读取项目库列表 cd $SVN_REPOROOT for name in $(ls) do ##开始做全量备份 $SVN_ADMIN hotcopy $SVN_REPOROOT/$name $RAR_STORE/$name cd $SVN_BACK/$date tar zcvf $name.tar.gz $name rm -rf $RAR_STORE/$name done ##备份打包压缩 # package the backup folder #cd $SVN_BACK/$date #tar zcvf $name.tar.gz $name #rm -rf $RAR_STORE/$name

#!/bin/sh #Subversion的安装目录及执行文件 SVN_HOME=/usr/local/subversion/bin SVN_ADMIN=$SVN_HOME/svnadmin SVN_LOOK=$SVN_HOME/svnlook SVN_BACK=/home1/svnbackups/increment ##配置库根目录 SVN_REPOROOT=/home1/svnroot/hxz ##增量备份文件存放路径 date=$(date '+%Y-%m-%d') RAR_STORE=$SVN_BACK/$date if [ ! -d "$RAR_STORE" ];then mkdir -p $RAR_STORE fi ##日志存放目录 Log_PATH=/home1/svnbackups/log if [ ! -d "$Log_PATH" ];then mkdir -p $Log_PATH fi ##读取项目库列表 cd $SVN_REPOROOT for name in $(ls) do if [ ! -d "$RAR_STORE/$name" ];then mkdir $RAR_STORE/$name fi cd $RAR_STORE/$name if [ ! -d "$Log_PATH/$name" ];then mkdir $Log_PATH/$name fi echo ******Starting backup from $date****** >> $Log_PATH/$name/$name.log echo ******svn repository $name startting to backup****** >> $Log_PATH/$name/$name.log $SVN_LOOK youngest $SVN_REPOROOT/$name > $Log_PATH/A.TMP UPPER=`head -1 $Log_PATH/A.TMP`

Svn Linux安装方法

Svn 安装方法 1.创建 svn linux 用户: a)使用root 用户登录后,创建svn 组 gsvn, 创建用户 svn . b)创建组命令: groupadd gsvn c)创建用户命令: useradd –s svn -p svn -r svn –g gsvn d)修改密码: passwd svn 2.安装java 运行环境 : jdk1.6 a)Jdk linux 安装文件jdk-6u23-linux-x64.bin b)安装jdk命令: ./jdk-6u23-linux-x64.bin c)配置环境变量:在 /ect/profile 文件中添加如下变量: export JAVA_HOME=/svnserver/jdk1.6.0_23 export JRE_HOME=/svnserver/jdk1.6.0_23/jre export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH 3.安装svn 服务器: CollabNetSubversionEdge-1.3.1_linux-x86_6 4.tar.gz a)安装文件CollabNetSubversionEdge-1.3.1_linux-x86_64.tar.gz. b)安装命令:tar -zxf CollabNetSubversionEdge-1.1.0_linux-x86.tar.gz 4.启动svn 服务器: o Svn 解压后会生成一个csvn 文件夹 ,移动到csvn 文件夹下: cd csvn o启动命令: bin/csvn start 5.管理台 a)安装完成后页面,登录用户名/密码: admin/admin

相关主题
文本预览
相关文档 最新文档