SVN常用的命令

SVN是一个开源的版本控制系统,它是一种集中式的版本控制系统,工作时需要联网;而现在比较流行的Git是一种分布式的版本控制系统,关于两者的比较可以参考SVN和Git的比较

下面只是来介绍下SVN中常用的命令,我安装的版本是Ubuntu 12.04 SVN 1.7

一、如果不清楚SVN可以使用哪些命令,只要help就会列出所有的命令,但常用的命令只有几个而已

svn help — Help!

别名:?,h

描述:显示帮助信息

访问库:否。

eg:

[email protected]:~/D/dzt/workarea/7301_mp/android_mtk_mp$ svn help

用法: svn <subcommand> [options] [args]

Subversion 命令行客户端,版本 1.7.18。

使用“svn help <subcommand>” 显示子命令的帮助信息。

使用“svn --version”查看程序的版本号和版本库访问模块,或者

使用“svn --version --quiet”只查看程序的版本号。

大多数的子命令可接受文件或目录参数,对目录进行递归处理。

如果没有指定参数,默认对当前目录(包含当前目录)递归处理。

可用的子命令: (下面括号中就是命令的别名、简写)

add

blame (praise, annotate, ann)

cat

changelist (cl)

checkout (co)

cleanup

commit (ci)

copy (cp)

delete (del, remove, rm)

diff (di)

export

help (?, h)

import

info

list (ls)

lock

log

merge

mergeinfo

mkdir

move (mv, rename, ren)

patch

propdel (pdel, pd)

propedit (pedit, pe)

propget (pget, pg)

proplist (plist, pl)

propset (pset, ps)

relocate

resolve

resolved

revert

status (stat, st)

switch (sw)

unlock

update (up)

upgrade

Subversion 是版本控制工具。

欲取得详细资料,请参阅 http://subversion.apache.org/

二、

svn info [TARGET[@REV]...]

别名:无

描述:显示指定WC和URL信息。

访问库:仅当访问的是库路径时。

eg:

[email protected]:~/D/dzt/workarea/7301_mp/android_mtk_mp$ svn info

路径: .

工作副本根目录: /home/dzt/D/dzt/workarea/7301_mp/android_mtk_6752_mp

URL: http://192.168.110.97/svn/android_mtk_6752_mp/trunk

版本库根: http://192.168.110.97/svn/android_mtk_6752_mp

版本库 UUID: 70e49d97-b16d-481c-ab8a-a723f641743d

版本: 2146

节点种类: 目录

调度: 正常

最后修改的作者: admin

最后修改的版本: 2010

最后修改的时间: 2014-11-18 12:09:20 +0800 (二, 2014-11-18)

三、

svn status [PATH...]

别名:stat, st

描述:输出WC中文件和目录的状态。如果WC提交,这些状态就会同步到库里。

一般状态有         ‘ ‘  没有修改

‘A‘  新增

‘D‘  删除

‘M‘  修改

‘R‘  替代

‘C‘  冲突

‘I‘  忽略

‘?‘  未受控

‘!‘  丢失,一般是将受控文件直接删除导致

访问库:加上--show-updates参数时会

eg:

[email protected]:~/D/dzt/workarea/7301_mp/android_mtk_mp$ svn status

!       .

M       auto_sync_android.log

M       bionic/libc/kernel/common/linux/hwmsensor.h

M       bionic/libc/kernel/common/linux/sensors_io.h

?       bionic/libc/kernel/common/linux/spi/spidev.h

?       bionic/libgn_prt

?       bionic/librsa_decrypt

?       bootable/bootloader/lk/dev/logo/fhd/fhd_amigo_charger_ov.bmp

?       bootable/bootloader/lk/dev/logo/fhd/fhd_amigo_kpoc_charge.bmp

?       bootable/bootloader/lk/dev/logo/fhd/fhd_amigo_low_battery.bmp

?       bootable/bootloader/lk/dev/logo/fhd/fhd_bat_empty_01.bmp

?       bootable/bootloader/lk/dev/logo/fhd/fhd_bat_empty_02.bmp

?       bootable/bootloader/lk/dev/logo/fhd/fhd_bat_empty_03.bmp

四、

svn update [PATH...]

别名:up

描述:更新WC,更新反馈有如下几种分类。

A  新增

B  锁破坏

D  删除

U  更新

C  冲突

G  合并

E  存在的

访问库:是

eg:

[email protected]:~/D/dzt/workarea/7301_mp/android_mtk_mp/frameworks/base/core/java/android/app$ svn up

正在升级 ‘.‘:

已还原“AlarmManager.java”

版本 2271

五、

svn checkout URL[@REV]... [PATH]

别名:co

描述:检出(下载)

访问库:否

eg:

[email protected]:~/D/dzt/workarea/7301_mp$ svn co http://192.168.110.110/svn/android_mtk_mp/trunk/frameworks/base/core/java/android/app app

A    app/SearchManager.java

A    app/IActivityPendingResult.aidl

A    app/IActivityController.aidl

A    app/DownloadManager.java

A    app/ApplicationThreadNative.java

A    app/LocalActivityManager.java

A    app/WallpaperInfo.java

A    app/Application.java

A    app/Instrumentation.java

A    app/SearchableInfo.java

A    app/ResourcesManager.java

A    app/ActivityOptions.java

A    app/IUserSwitchObserver.aidl

A    app/ApplicationPackageManager.java

A    app/Presentation.java

A    app/IThumbnailRetriever.aidl

A    app/ApplicationLoaders.java

A    app/UiModeManager.java

A    app/Notification.aidl

A    app/LauncherActivity.java

A    app/IntentService.java

A    app/AppGlobals.java

A    app/IBackupAgent.aidl

A    app/AppOpsManager.aidl

A    app/AlertDialog.java

A    app/AlarmManager.java

A    app/DatePickerDialog.java

A    app/ListFragment.java

A    app/IStopUserCallback.aidl

A    app/IApplicationThread.java

A    app/ISearchManagerCallback.aidl

A    app/package.html

A    app/ITransientNotification.aidl

六、

svn commit [PATH...]

别名:ci

描述:把你WC的更改提交到仓库(上传)

访问库:是

eg:

svn commit -m "added howto section." ##默认情况下提交必须提供log message

eg:

[email protected]:~/D/dzt/workarea/7301_mp/widget/widget$ svn ci AbsListView.java

正在发送       AbsListView.java

传输文件数据.

提交后的版本为 2081。

七、

svn cleanup [PATH...]

别名:无

描述:递归的清理WC中过期的锁和未完成的操作。有提交失败的情况也可以命令这个命令清除锁

访问库:否

eg:svn cleanup

八、

svn diff

别名:di

描述:用来比较并显示修改点。

访问库:

eg:svn diff   ##最常用的方式,用来显示WC基于最近一次更新以后的所有的本地修改点。

eg:svn diff -r 301 bin ## 比较WC和版本301中的bin目录的修改点

eg:svn diff -r 3000:3500 file:///var/svn/repos/myProject/trunk   ##比较库里主干3000版和3500版的差异。

eg:svn diff --summarize --xml http://svn.red-bean.com/repos/[email protected] http://svn.red-bean.com/repos/test  ##--summarize --xml 参数将差异情况以xml文档的方式显示出来

eg:

[email protected]:~/D/dzt/workarea/7301_mp/app$ svn diff AlarmManager.java

Index: AlarmManager.java

===================================================================

使用SVN管理代码时,在提交命令前这个命令是很有必要的,确保我在更新代码时不会把别人的覆盖掉

时间: 2024-10-13 13:34:38

SVN常用的命令的相关文章

svn常用快捷命令集合。

在把分支merge回主干的时候,有时候需要只提交自己修改过的文件,但是很多文件其实分支上没动过,但却显示有变化,这个其实是属性发生了变化.svn通过svn:mergeinfo来记录merge的记录.所以有时候需要把只有属性变化的文件给revert掉.这个时候可以用下面的命令: -v:简介.-m:接受我的冲突.-t:接受他的冲突.-r:revert svnopc:显示只有属性冲突的文件.可接受参数-v,-m,-t. svnopm:显示只有属性发生变化的文件.可接受参数-r. svnc:显示所有冲突

svn常用维护命令

公司版本管理同时用的svn和gitlab,有互补作用 这边写一写慢慢积累自己用过的svn常用维护 查看版本范围之间的变化: [[email protected] mnt]# svn log -r 4500:4501 -v svn://192.168.2.82/zhuanti/ ------------------------------------------------------------------------ r4500 | weiliangliang | 2016-08-17 10:

svn 常用控制台命令解析

参数说明 :serverPath:表示服务器的文件路径 ,  localPath:表示本地的文件路径  , num 表示数字 , edition1:表示工程已经跟新的版本1 , edition2:表示工程已经跟新的版本2 , 1.从服务端导出相应的工程与文件夹: 步骤:先在本地进入想要导出到的目录下,然后执行命令:svn checkout serverPath 说明:使用此方式导出的工程文件受到svn版本控制与版本库保持关联,工程中存在隐藏文件.svn,可以进行svn的其他操作. 2.从服务器导

SVN常用命令

SVN(Subversion)是一个自由.开源的项目源代码版本控制工具.目前,绝大多数开源软件和企业代码管理,都使用SVN作为代码版本管理软件. Subversion将文件存放在中心版本库里,这个版本库很像一个普通的文件服务器.不同的是,它可以记录每一次文件和目录的修改情况,这样就可以在需要的回滚时,将数据恢复到以前的版本,并可以查看数据的更改细节. SVN 官方网址:Apache Subversion SVN 服务器配置:安装SVN服务器   一. SVN常用命令 1.将文件checkout到

svn常用命令与分支操作

创建分支 svn cp -m "create branch" http://svn_server/xxx_repository/trunk http://svn_server/xxx_repository/branches/br_feature001 获得分支 svn co http://svn_server/xxx_repository/branches/br_feature001 合并主干上的最新代码到分支上 cd br_feature001 svn merge http://sv

SVN常用命令说明

本文转载至  http://www.blogjava.net/jasmine214--love/archive/2011/01/12/342839.html :1.5 及更新版本 名词说明: WC:Working Copy 你的工作区 Versioned:受控的:受版本控制的 SVN是什么? SVN是开源的版本控制系统. 比CVS更多的特性.一个更好的CVS?因此SVN具有大部分CVS拥有的特性. 不仅仅是文件受控,目录也加入版本控制. 复制,删除,重命名这些操作都是受控的. 特殊作用的元数据(

svn常用命令详解(很全,很实用)

ubuntu下安装subversion客户端: sudo apt-getinstall subversion subversion-tools 1.检出 svn  co  http://路径(目录或文件的全路径) [本地目录全路径] --username 用户名 --password 密码 svn  co  svn://路径(目录或文件的全路径) [本地目录全路径]  --username 用户名 --password 密码 svn  checkout  http://路径(目录或文件的全路径)

SVN常用命令总结(持续更新)

现在流行的协同管理工具估计就属SVN和Git了.这两者都使用过,不过现在正在使用的是SVN,故将经常使用的命令总结下来. 不管是Windows端的svn客户端还是eclipse的subversion插件,都是界面化操作.这里记录的是Linux下的命令行式操作命令: 1)查找帮助:svn help 2)将文件checkout到本地目录:svn checkout path(path是服务器上的目录).如果check出的是工程,且需要用一个新的工程名则可以用该语句:svn checkout path(

SVN常用命令之checkout

SVN常用命令之checkout mac终端下可以直接使用svn的命令,因为mac系统默认是已装svn:  ~ which svn /usr/bin/svn redhat/centos系统下需手动安装,命令如下: [[email protected]~]#  yum install -y subversion [[email protected] ~]# svn --version svn,版本 1.7.14 (r1542130) 编译于 Aug 23 2017,20:43:38 常用检出命令