【SVN】基础命令使用详解

1、将文件checkout到本地目录

svn checkout path(path是服务器上的目录、URL) [本地path]
例如:svn checkout https://svn.jidongnet.com/svn/weekly_work_report/
简写:svn co 

注:只能checkout目录,不能checkout文件。

2、往版本库中添加新的文件 
svn add file(dir) 
例如:svn add test.txt(添加test.txt)
svn add *.php(添加当前目录下所有的php文件) 

注:

(1)只能添加checkout目录下的新文件或者目录,

例:假如有一个新文件:/mnt/project/1/test.txt,这时需要将此文件添加到版本库中去,有多种方式可以添加,这里仅给出2种:

一:在当前目录/mnt/project/下使用:

svn add /mnt/project/1/test.txt

二:cd到/mnt/project/1/目录下,然后:

svn add test.txt即可

(2)将新的文件预定添加到版本库中(实际上并没有真正地添加到版本库中),前提是,版本库中没有这个文件,这个文件必须是新的。svn add之后,还必须使用svn ci 才能真正的提交到版本库中去。


3、将改动的文件提交到版本库 
svn commit -m “LogMessage“ [-N] [--no-unlock] PATH(如果选择了保持锁,就使用–no-unlock开关) 
例如:svn commit -m “add test file for my test“ test.php 
简写:svn ci 

注:logmessage可以随意写。


4、查看日志

svn log file(dir)
例如:svn log test.php    显示这个文件的所有修改记录,及其版本号的变化。 


5、加锁/解锁 
svn lock -m “LockMessage“ [--force] PATH 
例如:svn lock -m “lock test file“ test.php 
svn unlock PATH 


6、更新到某个版本 
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 


7、查看文件或者目录状态 
1)svn status path(目录下的文件和子目录的状态,正常状态不显示) 
【?:不在svn的控制中;M:内容被修改;C:发生冲突;A:预定加入到版本库;K:被锁定】 
2)svn status -v path(显示文件和子目录状态) 
第一列保持相同,第二列显示工作版本号,第三和第四列显示最后一次修改的版本号和修改人。 
注:svn status、svn diff和 svn revert这三条命令在没有网络的情况下也可以执行的,原因是svn在本地的.svn中保留了本地版本的原始拷贝。 
简写:svn st 


8、删除文件 
svn delete path -m “delete test fle“ 
例如:svn delete https://svn.jidongnet.com/svn/weekly_work_report/test2 -m “delete test file” 
或者直接svn delete test.php 然后再svn ci -m ‘delete test file‘,推荐使用这种。
简写:svn (del, remove, rm) 

9、查看文件详细信息 
svn info path 
例如:svn info test.php 


10、比较差异 
svn diff path(将修改的文件与基础版本比较)
例如:svn diff test.php 
svn diff -r m:n path(对版本m和版本n比较差异)
例如:svn diff -r 200:201 test.php 
简写:svn di 

11、将两个版本之间的差异合并到当前文件 
svn merge -r m:n path 
例如:svn merge -r 200:205 test.php(将版本200与205之间的差异合并到当前文件,但是一般都会产生冲突,需要处理一下) 

12、SVN 帮助 
svn help 
svn help ci 

#############################################################################


13、版本库下的文件和目录列表 
svn list path 
显示path目录下的所有属于版本库的文件和目录 
简写:svn ls 

14、创建纳入版本控制下的新目录 
svn mkdir: 创建纳入版本控制下的新目录。 
用法: 

1、mkdir PATH… 
2、mkdir URL… 
创建版本控制的目录。 
1、每一个以工作副本 PATH 指定的目录,都会创建在本地端,并且加入新增调度,以待下一次的提交。 
2、每个以URL指定的目录,都会透过立即提交于仓库中创建。 
在这两个情况下,所有的中间目录都必须事先存在。 

15、恢复本地修改 
svn revert: 恢复原始未改变的工作副本文件 (恢复大部份的本地修改)。

revert: 用法:svn revert PATH… 
注意: 本子命令不会存取网络,并且会解除冲突的状况。但是它不会恢复被删除的目录。

16、代码库URL变更 
svn switch (sw): 更新工作副本至不同的URL。 
用法:

1、switch URL [PATH] 

更新你的工作副本,映射到一个新的URL,其行为跟“svn update”很像,也会将服务器上文件与本地文件合并。这是将工作副本对应到同一仓库中某个分支或者标记的方法。 

2、switch –relocate FROM TO [PATH...] 
改写工作副本的URL元数据,以反映单纯的URL上的改变。当仓库的根URL变动(比如方案名或是主机名称变动),但是工作副本仍旧对映到同一仓库的同一目录时使用这个命令更新工作副本与仓库的对应关系。 

17、解决冲突 
svn resolved: 移除工作副本的目录或文件的“冲突”状态。 
用法: resolved PATH… 
注意: 本子命令不会依语法来解决冲突或是移除冲突标记;它只是移除冲突的相关文件,然后让 PATH 可以再次提交。 

18、输出指定文件或URL的内容。 
svn cat 目标[@版本]…如果指定了版本,将从指定的版本开始查找。 
svn cat -r PREV filename > filename (PREV 是上一版本,也可以写具体版本号,这样输出结果是可以提交的)

时间: 2025-01-02 04:43:22

【SVN】基础命令使用详解的相关文章

《Ansible权威指南 》一Ansible命令用法详解

2.3 Ansible命令用法详解 Ansible命令行执行方式有Ad-Hoc.Ansible-playbook两种方式,Web化执行方式其官方提供了付费产品Tower(10台以内免费),个人的话可以基于其提供的API开发类似的Web化产品.关于命令行执行的两种方式Ad-Hoc和Ansible-playbooks.什么是Ad-Hoc及Ad-Hoc与Ansible-playbook的区别我们在第3章有详细介绍,这里不再赘述.需简要说明的是两者没有本质上的区别,Ad-Hoc主要用于临时命令的执行,A

《Ansible权威指南》一2.3 Ansible命令用法详解

2.3 Ansible命令用法详解 Ansible命令行执行方式有Ad-Hoc.Ansible-playbook两种方式,Web化执行方式其官方提供了付费产品Tower(10台以内免费),个人的话可以基于其提供的API开发类似的Web化产品.关于命令行执行的两种方式Ad-Hoc和Ansible-playbooks.什么是Ad-Hoc及Ad-Hoc与Ansible-playbook的区别我们在第3章有详细介绍,这里不再赘述.需简要说明的是两者没有本质上的区别,Ad-Hoc主要用于临时命令的执行,A

Mysql导入导出工具Mysqldump和Source命令用法详解_Mysql

在PHP网站开发中,时常遇到Mysql数据库备份或数据库迁移工作,这时Mysql怎么导入导出数据库中的数据就非常关键,Mysql本身提供了命令行导出工具Mysqldump和Mysql Source导入命令进行SQL数据导入导出工作,通过Mysql命令行导出工具Mysqldump命令能够将Mysql数据导出为文本格式(txt)的SQL文件,通过Mysql Source命令能够将SQL文件导入Mysql数据库中,下面通过Mysql导入导出SQL实例详解Mysqldump和Source命令的用法. M

Linux 下 Make 命令实例详解

  Linux 下 Make 命令实例详解          Linux 下 make 命令是系统管理员和程序员用的最频繁的命令之一.管理员用它通过命令行来编译和安装很多开源的工具,程序员用它来管理他们大型复杂的项目编译问题.本文我们将用一些实例来讨论 make 命令背后的工作机制. Make 如何工作的 对于不知道背后机理的人来说,make 命令像命令行参数一样接收目标.这些目标通常存放在以 "Makefile" 来命名的特殊文件中,同时文件也包含与目标相对应的操作.更多信息,阅读关

10个实用的电脑运行命令功能详解

  10个实用的电脑运行命令功能详解 要使用命令操作,最基本的是先需要如何打开运行操作框,主要有2种方法: 1.最快捷方法:使用 Windows + R 组合快捷键,快速呼出命令操作窗口. 2.常用方法:点击桌面左下角的"开始"然后找到并点击打开→"运行". 使用方法,打开命令操作窗口后,只要输入输入命令,然后按回车键或点击"确定"即可允许命名,实现各种功能. 了解如何打开命名操作框之后,接下来就来分享一下实用的命令吧,使用命令可以实现很多功能,

深入理解JavaScript系列(34):设计模式之命令模式详解

 这篇文章主要介绍了深入理解JavaScript系列(34):设计模式之命令模式详解,命令模式(Command)的定义是:用于将一个请求封装成一个对象,从而使你可用不同的请求对客户进行参数化,对请求排队或者记录请求日志,以及执行可撤销的操作,需要的朋友可以参考下     介绍 命令模式(Command)的定义是:用于将一个请求封装成一个对象,从而使你可用不同的请求对客户进行参数化:对请求排队或者记录请求日志,以及执行可撤销的操作.也就是说改模式旨在将函数的调用.请求和操作封装成一个单一的对象,然

《Ansible权威指南》一2.4 Ansible系列命令用法详解与使用场景介绍

2.4 Ansible系列命令用法详解与使用场景介绍 如何获取Ansible的系列命令呢?在终端键入ansible后连续按两次Tab键,会补全所有以ansible字母开头的命令,这些命令均是Ansible系列命令.本节我们来逐一介绍Ansible的系列命令使用. ansible ansible-galaxy ansible-pull ansible-doc ansible-playbook ansible-vault ansible-console 2.4.1 ansible 命令ansible

bat批处理 if 命令示例详解_DOS/BAT

if 命令示例详解 if,正如它E文中的意思,就是"如果"的意思,用来进行条件判断.翻译过来的意思就是:如果符合某一条件,便执行后面的命令. 主要用来判断,1.两个"字符串"是否相等:2.两个数值是大于.小于.等于,然后执行相应的命令. 当然还有特殊用法,如结合errorlevel:if errorlevel 1 echo error 或者结合defined(定义的意思):if defined test (echo It is defined) else echo 

Linux 文件查找命令which 详解

某个文件不知道放在哪里了,通常可以使用下面的一些命令来查找: which  查看可执行文件的位置 whereis 查看文件的位置 locate   配合数据库查看文件位置 find   实际搜寻硬盘查询文件名称 附:Linux文件查找命令find详解   which 命令详解 which命令的作用是,在PATH变量指定的路径中,搜索某个系统命令的位置,并且返回第一个搜索结果.也就是说,使用which命令,就可以看到某个系统命令是否存在,以及执行的到底是哪一个位置的命令. 1.命令格式: whic