SVN基本功能

检出(Checkout):
  从版本库取出一个新版本。

提交(Commit):
   将对工作副本的修改发送给版本库。

更新(Update):
  下载最新版本库文件的记录。

锁定-修改-解锁:
  1. 一定时间段版本库的一个文件只允许一个人修改,直至解锁。
  2. 锁定(Get lock),解锁(Release lock)



还原(Revert):
  取消最近一次的操作(只针对客户端,服务端不做改动)。

更新到特定版本(Update to revision):
  本地文件副本,更新为服务器上的指定版本。

重命名(Rename):
  对已经纳入svn管理的文件进行重命名。

添加(Add):
  把文件添加到SVN,即将文件纳入SVN管理。

删除(Delete):
  对已近纳入SVN管理的文件进行删除。

清理(Clean up):
  SVN更新时,由于一些操作中断更新(磁盘空间不够等),可能会造成本地文件被锁定的情况,
  解决方法:
    1. 使用clean up来清除锁定。
    2. 若不是本目录,往上层目录寻找直至根目录。
    3. 有时,根目录都无法clean up,则另选目录重新Check out。
    4. 如果觉得第3种很麻烦,可以考虑这样的方法。
      其实SVN加锁会在.svn(隐藏文件)中生成一个名字叫lock的文件(无后缀),查找所有的,手工删除。
        然后再尝试更新,系统可能会提示某个.base文件无法访问。
      找到它,把相关的文件或其所在的目录删除,重新更新,工作量就小多了。


分支/基线(Branch/Tag):
  SVN的项目目录下,有3个子目录:trunk, branch, tag
    1. trunk: trunk目录是主目录,即工作目录。绝大部分提交、更新操作都发生在这个目录。
    2. branch: branch目录是分支目录,存放当前开发版本的分支版本。
    3. tag: tag目录是基线目录,存放已经发布的版本或者重要的基线目录。这个目录为只读。
           如果有bug需要修改,则需要创建基线目录的分支目录来修改。


重定位(Relocate):
  有时服务器的地址改变了,利用relocate来重新定位服务器的地址。


svn的版本号是如何迭代的?
  4个规则:
    1. 版本号从1开始迭代,每次提交使版本号增1.
    2. 每个受版本控制的文件有自己的版本历史,其第一个版本号为加入时版本库的版本号。
    3. 版本库的版本号 = 目前所有受版本控制的文件版本号的最大值。
    4. 版本库的版本号是连续的,文件版本号非连续。

Checkout和Export的差异?
  Checkout出的内容受版本控制,Export出的内容不受版本控制。


原文地址:https://www.cnblogs.com/forstudy/p/2685290.html