经验总结:Subversion使用命令行访问项目源文件 下篇

开发 项目管理
本文介绍Subversion命令相关问题,主要包括Subversion入门,处理SVN存储库中的文件,将您的更改提供给SVN存储库,使用存储库等知识。

本文是Subversion命令介绍的最后一节了,通过之前两节的介绍相信你对Subversion命令应该有了大致的了解了吧,让我们来继续学习Subversion命令。

使用存储库

创建新目录:svnmkdir,若要在您的工作副本中创建新目录,请键入:svnmkdirPATH;若要在您的项目存储库中创建新目录,请键入:svnmkdirURL;PATH或URL的最后一部分决定目录名称。在立即提交时在存储库中创建目录,所以还需要一条提交信息。

转换:--message(-m)TEXT,--file(-F)FILE,--quiet(-q),--usernameUSER,--passwordPASS,--no-auth-cache,--non-interactive,--editor-cmdEDITOR,--encodingENC,--force-log,--config-dirDIR
移动文件或目录:svnmove;您可以使用svnmoveSRCDST在工作副本或项目存储库内部移动文件或目录。此命令等效于在使用svncopy后,再使用svndelete。在工作副本内部移动文件或目录,不仅会移动该文件或目录,而且还将安排它以便于下次提交时进行添加。在项目存储库内部移动文件或目录属于封闭单元式提交,所以需要一条提交信息。

Subversion命令转换:--message(-m)TEXT,--file(-F)FILE,--revision(-r)REV,--quiet(-q),--force,--usernameUSER,--passwordPASS,--no-auth-cache,--non-interactive,--editor-cmdEDITOR,--encodingENC,--force-log,--config-dirDIR

使用属性

Subversion具有很多具体属性,这些属性影响或决定其行为。您可以修改、提交和撤消属性更改,就像对文件内容所执行的操作一样。您还可以从本地工作副本或项目存储库的文件、目录或修订版本中,删除、编辑、打印、列出以及设置属性。请参见属性、无版本属性、元数据属性、svnpropdel、svnpropedit、svnpropget、svnproplist、svnpropset、Hook脚本。

解决冲突:svnresolved,更新本地工作副本时,可能会遇到冲突。您需要解决此冲突。解决冲突后,键入svnresolvedPATH...,通知工作副本该冲突已“解决”。

转换:--targetsFILENAME,--recursive(-R),--quiet(-q),--config-dirDIR请参见解决冲突(合并其他人的更改)。

撤消您的更改:svnrevert,使用Subversion时,您会发现svnrevertPATH...等效于Windows中的CtrlZ。您可以:撤消本地工作副本中的任何本地更改,从而解决冲突状态。
撤消工作副本中的条目内容及属性更改。取消任何进度安排操作,如添加文件、删除文件等。注意,如不提供目标,会导致工作副本中的更改丢失。

Subversion命令转换:--targetsFILENAME,--recursive(-R),--quiet(-q),--config-dirDIR,获取文件/目录的状态:svnstatus在版本控制中,将更改提交到项目存储库之前最好对其进行审查。可以运行svnstatus打印工作副本中的文件和目录的状态。打印结果为八列编码输出。由于每列都有详尽的图例,若要从此输出中得出“无错误”的结论几乎不可能。若要使此任务更加简单,并同时可看到示例,请在命令提示符处键入svnhelpstatus。

转换:--show-updates(-u),--verbose(-v),--non-recursive(-N),--quiet(-q),--no-ignore,--usernameUSER,--passwordPASS,--no-auth-cache,--non-interactive,--config-dir请参见检查你的更改。

转换工作副本:svnswitch,可以使用svnswitchURL[PATH]更新工作副本,以镜像新的URL。您还可以将工作副本或部分工作副本移动到新的分支。您可以将此子命令用作分支的快捷方式。

转换:--revision(-r)REV,--non-recursive(-N),--quiet(-q),--diff3-cmdCMD,--relocate,--usernameUSER,--passwordPASS,--no-auth-cache,--non-interactive,--config-dirDIR请参见转换工作副本、分支和合并以及svnswitch。

更新工作副本:svnupdate,为了进行更好的版本控制,建议您每天用项目存储库更新本地工作副本,请使用:svnupdate[PATH...]列出的已更新条目以及它们的当前状态显示如下:
A=已将一个文件添加到您的工作副本中。
U=已更新您的工作副本中的一个文件。
D=已从您的工作副本中删除一个文件。
R=已替换您的工作副本中的一个文件。
G=已成功合并了一个文件。
C=一个文件已合并了必须手动解决的冲突
Subversion命令转换:--revision(-r)REV,--non-recursive(-N),--quiet(-q),--diff3-cmdCMD,--usernameUSER,--passwordPASS,--no-auth-cache,--non-interactive,--config-dirDIR请参见更新你的工作副本、手动合并冲突。

分支和标记

项目的主干通常用作开发主线,而分支通常用作主线的变更。分支是正在进行的开发线。在软件开发生命周期中,如果软件产品的发布版本已到期,经常会用到分支,使测试者可以使用候选版本,使新的开发可以继续进行,不受测试的约束。分支还用于实验性工作,以及完成代码重写。标记是将一组文件修订版本标记为整体的方式。虽然分支和标记都是使用svncopy子命令创建的,但它们是完全不同的。分支表示多个修订版本而标记只表示单个修订版本。

本站点上您项目的Subversion存储库支持对您的源文件进行分支和标记。对于Subversion来说,标记和分支属于简单实用的“复制”操作。若要创建分支或标记项目文件,请键入:svncopySRCDST-m"在此处键入您的信息"。到这里Subversion命令已经介绍完毕。

  【编辑推荐】

  1. 学习笔记:剖析Collabnet Subversion集成
  2. 深入剖析:Subversion1.5.5和Apache2.2.9在Windows下的完美结合
  3. Subversion和TortoiseSVN如何在Windows下进行构建SVN版本控制
  4. 揭露MyEclipse Subversion环境建立的内幕
  5. 经验总结:如何让Visual Studio 2008支持Subversion

 

责任编辑:佚名
相关推荐

2010-05-18 15:48:03

2010-05-18 15:06:46

Subversion命

2010-01-15 18:50:25

VB.NET资源文件

2010-05-17 09:45:00

subversion源

2010-05-13 15:18:19

Subversion插

2010-05-13 14:27:28

Subclipse插件

2014-12-05 10:10:48

Java

2010-05-17 13:34:47

2012-11-20 16:16:05

Windows

2022-08-14 19:19:14

Linux

2012-03-08 10:03:11

JavaClass

2009-09-08 16:02:47

Linq使用Group

2009-09-25 17:26:55

使用Hibernate

2020-07-23 08:00:09

安全 恶意软件技术

2019-06-17 09:30:50

命令行Windows 10管理密码

2024-11-18 15:05:34

MySQL数据库

2012-02-08 16:37:36

ibmdw

2009-12-18 18:29:43

Linux Fedor

2021-09-30 07:03:12

gRPC服务Grpcurl

2013-12-03 09:23:06

命令行网速
点赞
收藏

51CTO技术栈公众号