`

SVN的命令行操作

    博客分类:
  • SVN
 
阅读更多

最近在进行svn二次开发,使用的是svnkit。看了很多svnkit的api,渐渐发现都是和SVN的命令行操作对应的。顺便研究一下svn的命名行操作。

1.将文件checkout到本地目录:

  基本命令:svn checkout 服务器地址 本地目的文件夹

  可简化为:svn co 服务器地址 本地目的文件夹

  效果:

  

2.将文件add到服务器

  基本命令:svn add 工作目录中的文件

  效果:

  

  注意:若不是工作目录会提示错误:

  

  

3.查看文件信息:

  基本命令:svn info 工作目录的文件

  效果:

  

 

  

4.显示工作目录下的文件:

  基本命令:svn list 工作目录或文件

  效果:

  

5.比较文件差异:

  基本命令:

  svn diff path(将修改的文件与基础版本比较)
  svn diff -r m:n path(对版本m和版本n比较差异)

  效果:

  

 

  

6.更新到某个版本:

  基本命令:svn update -r m path
  简写:svn up

  效果:

  

7.import操作

  基本命令; svn import 要导入的文件夹路径 服务器地址 --message "随便的话"

  效果:

  

 

8,提交操作commit:

  基本命令:svn commit 工作区要commit的文件路径 -m "commit"

  简写:svn ci工作区要commit的文件路径 -m "commit"

  效果:

  

9.重命名操作:

  基本命令:svn mv 服务器中文件路径 要更改的名称 --message "rename"

  效果:

  

10,删除版本库中的文件

  基本命令:svn delete 服务器上的要删除的文件的路径 --message "delete"

  效果:

  操作之前:

操作之后;

11.回滚命令revert

  基本命令:svn serve 要取消修改的文件路径

  效果:

  

  

取消对代码的修改分为两种情况:
 
第一种情况:改动没有被提交(commit)。
这种情况下,使用svn revert就能取消之前的修改。
svn revert用法如下:
# svn revert [-R] something
其中something可以是(目录或文件的)相对路径也可以是绝对路径。
当something为单个文件时,直接svn revert something就行了;当something为目录时,需要加上参数-R(Recursive,递归),否则只会将something这个目录的改动。
在这种情况下也可以使用svn update命令来取消对之前的修改,但不建议使用。因为svn update会去连接仓库服务器,耗费时间。
注意:svn revert本身有固有的危险,因为它的目的是放弃未提交的修改。一旦你选择了恢复,Subversion没有方法找回未提交的修改。

12.更强大的回滚命令merge

  基本命令:svn merge -r 当前版本号:要回滚的版本号 文件路径

 

  

第二种情况:改动已经被提交(commit)。
这种情况下,用svn merge命令来进行回滚。 
   回滚的操作过程如下: 
   1、保证我们拿到的是最新代码: 
     svn update 
     假设最新版本号是28。 
   2、然后找出要回滚的确切版本号: 
     svn log [something]
     假设根据svn log日志查出要回滚的版本号是25,此处的something可以是文件、目录或整个项目
     如果想要更详细的了解情况,可以使用svn diff -r 28:25 [something]
   3、回滚到版本号25:
       svn merge -r 28:25 something
     为了保险起见,再次确认回滚的结果:
       svn diff [something]
     发现正确无误,提交。
   4、提交回滚:
     svn commit -m "Revert revision from r28 to r25,because of ..." 
     提交后版本变成了29。
   将以上操作总结为三条如下:
   1. svn update,svn log,找到最新版本(latest revision)
   2. 找到自己想要回滚的版本号(rollbak revision)
   3. 用svn merge来回滚: svn merge -r : something

 

分享到:
评论

相关推荐

    SVN命令行操作.docx

    SVN命令行指令操作

    svn-win32-1.6.6.zip

    SVN运行独立服务器(支持svn命令行操作): svnadmin.exe、svn.exe在bin目录下。 内附常用命令: 三、建立版本库(Repository)svnadmin.exe create E:\SVN_DATA\ydsauna 注册成2个服务: sc create svnservice ...

    详解Linux上svn命令行批量操作

    主要介绍了详解Linux上svn命令行批量操作的相关资料,linux上的svn命令行批量添加或删除文件,需要的朋友可以参考下

    svn绿色解压版.rar

    svn(subversion)是近年来崛起的项目管理工具,绝大多数开源软件都使用svn作为代码版本管理软件,直接解压即可,无需在操作安装,安全 方便 快捷,

    文档版本管理软件svn入门资料

    java软件开发目前最后的版本管理软件SVN的入门资料. svn命令行操作 3个txt文件

    Python处理svn状态脚本

    使用python调用svn命令行,完成对svn工作目录的自动清理,自动完成解决冲突和恢复版本。使用subprocess,适用于windows和mac os。 使用方法:python jtcleansvn.py workingspacepath

    slik subversion命令行的svn工具 dos环境

    与小乌龟的图形化操作相比,这是dos环境下的命令行工具,支持所有的svn命令,方便开发人员直接用命令执行checkout等操作

    SVN高级视频教程

    本教程是在上一版基础上的升级,改进点包括:在Linux系统部署SVN服务器程序、更丰富的命令行操作、Eclipse特定文件全局忽略、分支管理、不通过Eclipse插件单纯使用TortoiseSVN上传Eclipse工程等等。

    cmd命令搭建svn服务器

    用简单的cmd命令就可以完成svn服务器,导入导出开发项目到svn

    svn-win32-1.7.2.zip (win32svn) [SVN 绿色版]

    ** 注意:将上面命令行中的 R:\SVNRepository 替换为自己的 SVN 版本库所在的位置。 ** 示例: set SVN_HOME=C:\svn set PATH=%PATH%;%SVN_HOME%\bin C:\svn\bin>svn --version svn,版本 1.7.2 (r1207936) 编译...

    DataService-Svnkit:一个安全,流畅,极简的远程SVN在线管理系统,解决了需要登录到远程服务器并通过命令行操作才能管理SVN服务器的烦恼,支持远程管理SVN服务器,关键功能操作发送邮件通知到相关人员

    SVN资源权限管理系统项目简介但是SVN服务并没有提供友好的远程管理工具,每次对SVN进行操作还需要登录到服务器进行本地命令行方式操作,比较麻烦;并且SVN服务本身记录的信息较少,如果不使用其他此类文件,数据库等...

    sqlite3命令行执行工具下载

    sqlite.exe命令行执行工具,用于在命令行操作sqlite,当svn出现循环引用时,可以用于清除svn自带sqlite数据库的表占用,也可以用于sqlite数据库简单操作

    SVN操作手册中文版网页格式

    转换后为网页格式的<SVN操作手册中文版> 目录 译者序 前言 序言 读者 怎样阅读本书 本书约定 排版习惯 图标 本书组织结构 Subversion 1.1的新特性,svn客户端和linux下命令行。 目录 1. 简介 1.1. 什么是 ...

    Ubuntu下安装界面化SVN客户端,并可访问windows的SVN Server

    操作SVN界面习惯了,到了linux下懒得再用命令行了; 按照网上的步骤操作,遇到了各种问题,又对各个问题作了整理和说明 包含了客户端和服务器端需要做的修改 希望能给大家帮助 如果有问题,也请联系我,很高兴和大家...

    SVN使用手册中文版快速入门

    Subversion命令行客户端:svn svn选项 svn子命令 svn add svn blame svn cat svn checkout svn cleanup svn commit svn copy svn delete svn diff svn export svn help svn import svn info svn list svn log svn ...

    python3调用windows dos命令的例子

    最近游戏项目在多个国家上线,每个国家都对应两份儿svn目录(一份是本地策划目录,一份...因为windows安装svn后是没有svn命令行的,所以首先需要下载Apache-Subversion,这是svn命令行工具,解压后设置环境变量。 pyth

    SVN使用手册中文版.chm

    Subversion命令行客户端:svn svn选项 svn子命令 svn add svn blame svn cat svn checkout svn cleanup svn commit svn copy svn delete svn diff svn export svn help svn import svn info svn list svn log svn ...

    svn-win32-1.7.0.zip (Win32Svn)

    ** 注意:将上面命令行中的 X:\SVNRepository 替换为自己的 SVN 版本库所在的位置。 ** 示例: set SVN_HOME=C:\svn set PATH=%PATH%;%SVN_HOME%\bin C:\svn\bin>svn --version svn,版本 1.7.0 (r1176462) 编译...

    SVN使用教程简易入门

    SVN现在是个很热门的东西,本...这份说明是写给那些希望使用Subversion去管理他们的资料,却又不习惯于命令行的操作的人。因为TortoiseSVN就像是一个windows的扩展外壳,用户可以像使用“我的电脑”那样使用这个软件。

Global site tag (gtag.js) - Google Analytics