到了最枯燥的内容了。
如果你看了第二节的内容,在检出的文件夹中试图添加或删除文件,然后再通过svn commit去提交这种变化,你会发现没有任何内容会提交给SVN。也就是说,SVN能够感知文件内容的变化,但却不能感知文件夹结构的变化。文件夹结构的变化必须要以svn命令的形式,显示地通知版本库。比如,增加、删除文件,更改文件路径等等操作,你不能使用操作系统提供的命令,而必须要使用svn提供的命令。
1、增加文件 -- svn add
格式:svn add PATH...
需要注意的是,这个命令只是在客户端标识了添加的文件或文件夹,它会在下一次commit的时候提交到版本库。也就是说,如果你用svn add一个文件后,再用svn list去查看版本库时是看不到这个文件的。另外,你还必须先把这个文件或文件夹创建出来准备好,svn add不会在本地给你创建文件的。
还有,如果添加的是一个文件夹,那么这个文件夹下的所有内容都会被添加。当然如果你是在add完之后才向文件夹中添加文件的,那么这个文件必须要再次add才会被提交。
2、删除文件 -- svn delete
格式:svn delete PATH...
svn delete URL...
前者在删除工作副本的路径的同时,会在下一次提交时同步版本库;后者则会立即删除URL标识的版本库,但本地的工作副本会得以保留,下一次提交时这个文件不会被提交。你可以使用--keep-local,要求保留本地工作副本。
3、复制文件 -- svn copy
格式:copy SRC[@REV]... DST
注意@REV代表的是版本号,因为源文件可能有多个版本
复制可以是在本地的工作副本中完成,也可以是直接在版本库中完成。同样的,如果是在本地工作副本中完成,将会在本地复制,但要等到下一次提交时才能同步到版本库;而如果针对版本库则会直接在库中复制。
4、移动文件 -- svn move
格式:move SRC... DST
与复制很像,不同的只是将文件换了个地方,即要删除原来的文件。
5、创建路径 -- svn mkdir
格式:mkdir PATH...
mkdir URL...
同样的,前者是针对本地工作副本,后者是针对版本库。
6、查看变化 -- svn status & svn diff
这两个命令用于查看工作副本相对于版本库的变化
svn status的基本格式是:svn status [PATH]
status命令提供了一个对工作副本的总体概览,哪些文件是新增加的,哪些文件修改了,哪些文件还没有同步到版本库,都会在这个命令后列出来。status使用了一些单字符代表状态信息,比如“?”代表没有同步到版本库、“!”代表丢失、“A”代表添加等等。比如,我执行该命令后的输出如下:
这就说明有三个文件不在版本控制之下,需要使用svn add添加,一个文件被修改,需要提交。
svn diff的格式有很多种,我不一一列举了,它的主要作用就是查看修改文件的具体变化内容。比如,我想查看上述目录中的变化情况,可以使用命令:
svn diff d:/ztest/out/
这样SVN会将这个目录下修改的文件内容都列举出来,就可以看到哪些地方更改了。
7、补丁 -- svn patch
patch,即补丁,是一个独立的文件,记录了两个版本之间的差异数据,可以使用以下命令生成补丁文件:
svn diff > [补丁文件名称]
然后,在工作副本中应用补丁:
svn patch [补丁文件名称] [工作副本路径]
8、更新 -- svn update
svn update用于同步本地工作副本与版本库,可以使用-r选项,告诉更新到哪一个版本,例如
svn update -r354,它的意思就是要更新到354这个版本
以上介绍一些典型的命令,当然这不是全部。就算我有兴趣将这些命令都在这节里写出来,我估计你也没有兴趣把它们看完。所以就介绍8个吧,还比较吉利的数字。你可以使用svn help查看这些命令,当你需要用的时候。
这些碎碎念念的东西,就是构成SVN命令行客户端的基本命令。虽然我们后面会介绍TortoiseSVN这种可视化的客户端工具,但这些命令对于我们深入理解SVN还是十分有帮助的。
- 大小: 3.2 KB
分享到:
相关推荐
### SVN视频教程学习知识点 #### 一、SVN简介与安装配置 ...通过以上内容的学习,可以全面掌握SVN的基本概念、操作方法以及在实际项目中的应用技巧,有助于提高软件开发过程中的版本管理和协同工作效率。
"svn基本操作教程" 本文档旨在提供svn基本操作的教程,涵盖配置、提交、更新、删除等基础操作的详细说明。svn是一种版本控制系统,旨在帮助开发者更好地管理项目代码。 一、版本控制原则 svn只是一个版本控制的...
本教程将深入探讨SVN的基础知识,包括安装配置、基本操作以及协同工作流程。 1. **SVN安装与配置** - Windows用户可以通过TortoiseSVN这个图形化客户端进行安装,安装后,文件右键菜单会集成SVN功能。 - Linux和...
根据提供的文件信息,本篇文章将围绕“尚硅谷SVN视频教程”进行深入解析,主要从SVN的基础概念、安装配置、基本操作以及应用场景等方面展开详细论述。 ### SVN基础概念 Subversion(简称SVN)是一种分布式版本控制...
在“Pro Git-中文简体(第二版) (1).pdf”中,你可以找到Git的详细使用指南,包括安装、基本命令、分支管理、远程仓库交互等内容。 接下来是Subversion(SVN)。SVN是一种集中式的版本控制系统,与Git相比,其主要...
### SVN 快速入门教程知识点概述 #### 一、软件下载 - **Subversion服务器程序**: 访问Subversion官方网站的二进制安装文件下载页面,寻找适用于Windows NT, 2000, XP and 2003系统的版本。以Apache 2.0或2.2为例,...
3. **操作指南**:详细介绍SVN的基本命令,如`svn add`、`svn commit`、`svn update`、`svn diff`等。 4. **协同开发**:讲解如何处理冲突,以及如何在团队中有效地使用SVN。 5. **分支与合并**:介绍如何创建和...
以上是SVN命令行的基本操作,熟练掌握这些命令将极大地提升你在版本控制方面的效率。记住,每个命令都可以通过添加选项进行更具体的定制,如指定修订版本或交互方式。在实际工作中,根据项目需求和团队协作模式,你...
这篇中文版的《SVN使用教程》详细介绍了如何利用SVN进行版本控制,旨在帮助用户从初学者到精通,包括从基本操作到高级配置,以及解决实际工作中遇到的问题。 教程的开篇可能会介绍SVN的基本概念,如仓库...
通过本文的介绍,我们了解到SVN的基本概念、主要功能以及如何利用SVN进行有效的项目管理。虽然近年来分布式版本控制系统如Git逐渐流行起来,但SVN因其简单易用、稳定可靠等特点仍然受到很多团队的喜爱。对于初学者来...
### SVN使用教程知识点详解 #### 一、SVN概述 - **为什么需要SVN版本控制软件** 在软件开发过程中,多个开发者需要协同工作,同时管理不同版本的代码。随着项目的推进,代码的修改、合并变得复杂。如果没有有效...
在本教程中,我们将深入探讨SVN的安装、配置以及基本操作,以帮助你更好地理解和应用这一强大的工具。 **一、SVN安装** 1. **Windows**: 对于Windows用户,可以下载TortoiseSVN,它是一个带有图形界面的SVN客户端...
10. 教程通过实例说明了SVN的基本工作流程,用户首先需要检出(Checkout)版本库中的代码到本地工作区,然后进行编码开发。在开发过程中可以定期更新(Update)本地代码库以获取最新的项目文件。当开发任务完成,...
三、SVN基本操作 1. 检出(Checkout):使用“Checkout”功能从仓库中获取最新的代码。这会创建一个本地工作副本,你可以在此副本上进行编辑。 2. 更新(Update):在工作副本中,你可以随时使用“Update”命令同步...
CentOS 7 安装 SVN 服务器教程 本文将详细介绍如何在 CentOS 7 上安装和配置 SVN 服务器。SVN(Subversion)是一种版本控制系统,广泛应用于软件开发、文档管理等领域。以下是安装和配置 SVN 服务器的步骤。 一、 ...
**SVN 使用教程** **1. 安装客户端与配置服务端** 安装客户端是使用 SVN 的第一步。TortoiseSVN 是一个常见的 SVN 客户端,提供了直观的图形界面。下载并安装后,根据提示进行操作,可以选择是否立即重启计算机以...
### 本机使用SVN教程知识点详解 #### 一、SVN简介与版本控制系统概念 - **SVN(Subversion)**:一种集中式的版本控制系统,由CollabNet发起并维护,是CVS(Concurrent Versions System)的升级替代品。SVN的主要...
【SVN教程】Subversion(SVN)是一种版本控制系统,用于跟踪文件和目录的更改,以便团队协作开发项目。TortoiseSVN是一款基于Windows的客户端工具,它提供了直观的图形用户界面,使得用户能够方便地与SVN仓库进行...
本教程旨在帮助初学者快速掌握SVN的基本使用方法,包括服务器搭建、客户端安装以及基础操作等。 #### 二、软件下载与安装 ##### 1. 软件下载 - **服务器程序**:访问Subversion官方网站,选择适合Windows NT, ...