搜档网
当前位置:搜档网 › linux下常用的svn操作

linux下常用的svn操作

linux下常用的svn操作
linux下常用的svn操作

1:checkout命令:

从svn版本库中取代码时可以先查看具体代码的路径,windows下右键单击Tortoise->repo_browser 可直接查看,linux下可以输入命令:svn list 版本库地址如图:

Checkout时命令是:Svn checkout 版本库地址如图:

注意在目前的svn版本中必须checkout一个文件夹下来,只checkout单个文件会提示失败。如图:

若想查看svn上某个具体文件,从而决定是否要checkout当前版本下来,可以执行命令:svn cat 文件在版本库上的地址。

下载好代码后可以通过执行ll –a 命令查看文件信息,可以看到在下载好的文件夹下有一个.svn 文件夹,该文件夹是用来维护工作拷贝信息的,保证拥有该文件夹的读写权限,就可以对下载的代码进行commit等一系列操作。如图:

2:commit命令:

将本地的修改工作拷贝上传到svn 服务器中,保证版本库的一致

具体命令是:svn commit 要上传的文件路径–m “日志信息”如图:

日志信息可以为空。注意提交时需将该文件更新,在上传,否则出错。若当前上传的文件不是从svn上checkout下来的文件,会提示不是工作副本,无法上传。

3:import 命令:

将本地代码上传到版本库中

进入到需要上传代码的目录,执行命令:

Svn import 想要上传到svn的路径-m “上传的日志信息”–no-ignore

如图:

注意上传时需添加日志选项-m ,可以为空,并且需要添加选项—no-ignore

因为svn上传时会默认屏蔽掉so .o 等文件,导致上传上去的代码不完整,若上传一半出错提示某些文件无法识别,最好将该文件的父文件夹打包上传,就可以成功传上去了。

4:log 命令

查看svn版本库的日志信息,具体命令是:

Svn log 查看日志信息的文件名

如图:

5:update命令:

将当前文件更新到版本库上某个具体版本文件

具体命令是:

Svn update –r 要更新的版本号文件路径如图:

6:add 命令:

往版本库中添加新的文件

add 功能:向文件拷贝所在的文件夹中添加新的文件,并作出标识,是新添加的,下一步提交时将一并提交到Subversion版本库中去。简单的说就是将一新文件加入svn,你添加再提交后该文件就进入subversion版本中去了。

具体命令是:

Svn add 文件名如图:

在当前的工作拷贝WEB_3G 文件夹中添加新文件text.html 然后将该文件add到版本库中

注意此时版本库中海没有新添加的文件text.html ,该文件会在下次提交时被放置到版本库中,如图:

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.sodocs.net/doc/5717963242.html,/ 下载当前最新的稳定版本subversion-1.6.6.tar.gz 到官网https://www.sodocs.net/doc/5717963242.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命令行工具 如果你不知道命令怎么用svn命令,可通过如下方式查询:svn help知道了子命令,但是不知道子命令的用法,还可以查询:svn help ci 开发人员常用命令导入项目svn import https://www.sodocs.net/doc/5717963242.html,:82/pthread --message "Start project"导出项目svn checkout https://www.sodocs.net/doc/5717963242.html,:82/pthread采用export 的方式来导出一份“干净”的项目svn export https://www.sodocs.net/doc/5717963242.html,:82/pthread pthread为失败的事务清场svn cleanup在本地进行代码修改,检查修改状态svn status -vsvn diff更新(update)服务器数据到本地svn update directorysvn update file增加(add)本地数据到服务器svn add file.csvn add dir对文件进行改名和删除svn mv b.c bb.csvn rm d.c提交(commit)本地文档到服务器svn commitsvn cisvn ci -m "commit"查看日志svn log directorysvn log file相关的一些东西:1、在本地文件中,每个目录下都有一个.svn文件夹(属性为隐藏),保存了相关的信息。2、注册环境变量SVN_EDITOR为"E:\Program Files\Vim\vim71\gvim.exe",结果在svn ci的时候,出现错误:'E:\Program' 不是内部或外部命令,也不是可运行的程序或批处理文件。svn: 提交失败(细节如下):svn:

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的最后一部分会作为本地目录的名字。

SVN使用手册大全(史上最全)

目录 1.修改SVN访问密码 (1) 2.SVN客户端使用说明 (2) 2.1.安装SVN客户端 (2) 2.2.迁出配置库内容 (3) 2.3.维护工作文件 (4) 2.3.1.增加文件 (4) 2.3.2.更新文件 (8) 2.3.3.删除文件 (9) 2.3.4.修改文件 (10) 2.3.5.比较版本差异 (10) 2.3.6.撤销更改 (13) 2.3.7.锁定和解锁 (13) 2.3.8.重命名文件 (14) 2.3.9.获取历史文件 (14) 2.3.10.检查冲突 (15) 2.3.11.解决冲突 (16) 2.3.12.忽略无需版本控制的文件 (16) 2.3.13.去除SVN标志 (17) 2.3.14.查看文件每行的修改信息 (17) 2.3.15.重置访问路径 (18) 2.3.16.本地路径转换 (18) 2.4.浏览版本库 (18) 2.5.建立标签 (19) 2.6.建立分支 (19) 2.7.清除用户名等信息 (20) 2.8.统计信息 (21) 3.MYECLIPSE集成SVN (23) 3.1.安装SVN插件 (23) 3.2.配置M Y E CLIPSE提交目录 (28)

1. 修改SVN访问密码 打开IE,在地址栏中输入地址:http:// /svnmanager/index.php,进入SVNManager的欢迎界面,如下图所示: 点击“登陆”按钮进入登陆界面,如下图所示: 输入已知的用户名和密码,点击“登陆”按钮进入用户管理界面,点击“用户管理”按钮显示“编辑用户”菜单,如下图所示: 点击“编辑用户”按钮,进入用户信息修改界面,如下图所示:

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.sodocs.net/doc/5717963242.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

SVN-高级应用使用指南

文档规则 [本地工作区] :work copy,本地工作副本; [主项目]:引用共用模块的新项目(工程) 最新版本(HEAD revision):版本库里文件或目录的最新版本 SA :SVN服务器的管理员 PRA :单个项目库的管理员,或者是项目负责人 User :普通工作人员 WC :work copy ,本地工作副本 一、模块化开发中svn的使用 主要介绍模块化开发中公用模块/组件的版本控制,介绍两种方法。其中,公用模块一般指那些已经完成的、不可修改的、无法编译成dll的、功能较为完整的代码群。 1.1手工维护公用模块/组件的[本地工作区] 将公用模块(的所需版本)直接取出ckeckout 到本地,公用模块的[本地工作区] 可以作为被引用的[主项目] [本地工作区] 的子目录也可以放在其他独立目录中。[主项目]的提交commit 对公用模块的[本地工作区] 不会发生任何影响,而且公用模块的[本地工作区] 需要项目团队中的每个成员与[主项目] [本地工作区] 相对独立的维护(取出ckeckout ),可能会出现不同项目成员之间的公用模块[本地工作区] 不一致的错误。 1.2 Svn自动维护公用模块/组件的[本地工作区] 需要使用svn:externals属性,具体操作步骤如下:察看[主项目] [本地工作区] 的目录属性

添加svn:externals 属性,格式:子目录名称-r版本号公用模块的URL。公用模块取出ckeckout出来的[本地工作区] 必须作为[主项目][本地工作区] 的子目录,格式中的“子目录名称”就是指公用模块的[本地工作区] 目录名称,注意不要与[主项目]自身的目录同名。如果需要使用公用模块的特殊版本,需要设置格式中的“版本号”,注意加上“-r”。设定好svn:externals属性后需要进行提交commit操作。项目团队的其他成员直接更新update即可,能够自动得到公用模块的[本地工作区]。[主项目]的提交commit对公用模块的[本地工作区] 不会发生任何影响。如果引用多个模块,只需要在设置该属性值的时候将多个模块的路径都填写上去即可。 注意:公用模块的[本地工作区] 一般不建议进行修改,即不要直接对公用模块的[本地工作区] 进行修改、提交commit 操作,建议管理员将公用模块的svn库的权限设置设定为只读权限。如果公用模块确实需要针对[主项目]进行个性化修改,这种情况的处理方法在此次讲座的后面将会谈到。

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显示这个文件的所有修改记录,及其版本号的变化

相关主题