SVN常用指令

1.Repo-browser(浏览版本库)
通过“浏览版本库”可以直接查看服务器上指定目录下的所有目录结构(需要有相关权限),包括特定版本的作者,提交时间等,并且在浏览版本库里面链接了很多SVN常用的功能。如显示日志,检出,导出,检入文件/文件夹,改名,删除文件,分支建立等。

2.Checkout(检出)
从SVN服务器上得到数据,即建立本地副本,并且修改后可以commit到SVN服务器上。相对于CC来说,SVN的checkout可以说完成了建立本地视图和checkout两个动作。checkout命令可以在本地计算机上,浏览版本库,显示日志等多个地方找到。

3.Update(更新)
更新本地副本,得到SVN服务器上最新的数据。一般check out建立本地副本后,都在该本地副本上修改提交,若想再次得到服务器上的最新版本,即需用Update。在修改之前,一般我们都需要执行Update动作,以保证在最新版本上做修改,以减少提交时冲突。特别是用锁定的模式开发,修改前必须先更新并获得锁后才能修改(后面会具体描述)提交。

4.Commit(提交)
提交修改到SVN服务器上。所有需提交到SVN服务器上本地副本的修改都需要用Commit命令完成。

Checkout和export区别

check out跟check in对应,export跟import对应。
check out导出获得文件后,导出的文件仍处于SVN版本控制中,与版本库保持关联,比如你可以进行Svn Update或者Svn Commit操作。同时导出文件夹下有一个.svn的隐藏文件夹,存储着一些版本的元数据信息。

export 简单导出一个版本的数据,导出的文件脱离SVN版本控制,修改后无进行Update和Commit操作。导出文件夹下没有.svn目录。

详细命令

  • show log :查看SVN上当前代码库的最新版本号是多少.打开右键看到一系列版本更新历史,最上面的那一行,即是最新版本号,所谓的 head revision.显示为粗体 的那一行即你本地当前的版本
  • TortoiseSVN—Repo-browser:

    打开你要比较的两个版本所在的地址,选择一个版本做为比较的基础(单击右键—选择mark for comparison),再选择另外一个版本(单击右键—选择show difference as unified diff),然后就会生成一个两个版本的不同之处的文本

通过“浏览版本库”可以直接查看服务器上指定目录下的所有目录结构(需要有相关权限),包括特定版本的作者,提交时间等,并且在浏览版本库里面链接了很多SVN常用的功能。如显示日志,检出,导出,检入文件/文件夹,改名,删除文件,分支建立等

  • check for modification:检查更新,可以检查哪些文件做了修改。在这些做了修改的文件上单击右键可以进一步的操作。

  • Revision Graph:版本分支图

版本分支图主要显示以下内容:

 1.建立分支和标签的时间和版本2.文件夹名称的修改3.最新的版本4.本地副本的版本

另外鼠标滑过任意版本框,都会显示该版本的日期、作者和备注信息等;选中版本框按右键可以使用另外很多的功能,如显示日志,合并版本等等;还可通过“CTRL+左键”选中两个版本进行比较等。

  • Resolve

  • update to revision: 更新版本可以使本地副本更新到任意一个历史版本,方便用户详细查看某一版本的具体内容。(更新后本地副本仅作为显示某一版本内容,不能复原为该版本,与复原命令不同)

  • Revert: 本地副本还原, 放弃本地副本的修改,将其还原到本地修改前的版本(最后提交或者更新的版本)

    还原至某一历史版本(Revert to this revision)将本地副本复原到选中的某一个历史版本,若需将该复原版本提交到服务器上,则还需Commit!

还原某一历史版本的修改(Revert changes from this revision)放弃某一历史版本的修改。该动作只还原某一个特定版本的修改,并不还原该版本之前所有版本的修改,若需将该复原版本提交到服务器上,则还需Commit!

  • Clean up:

  • get lock:获取锁定,在加锁原因中加入备注,其他人可以浏览版本库/日志里面看到添加的信息,包括谁,什么时间,为什么锁定等

  • Release lock:解除锁定,修改完文件并提交后,需及时的解锁,这样其他人才可以获取锁定,既而修改文件。

  • Branch/Tag:

分支用途

1.软件开发时以主干为基础,实现并行开发,不断将分支上的修改合并到主干上。
2.同一软件的发布版本BUG修改和升版的并行开发等。

创建分支

命令1:Branches/Tags(工作副本使用)
命令2:copy to(浏览版本库使用)
命令3:Create branche/tag form this revision(show log使用)
  • Switch:

  • Merge:合并

  • Export:导出,有时只想需得到配置库的某些资料,但不想受SVN版本控制,此时可以用Exprot。 Exprot与check out一样都是从服务器中得到数据资料,但是Exprot的数据资料不受版本的控制,无.SVN文件夹。

  • Add:添加

  • Create Patch:
  • Apply Patch:
  • Properties:
  • setting:设置
  • help:帮助
  • about:关于SVN
  • relocate:重新定位,当URL修改(服务器搬迁IP地址修改等),但本地副本还需继续使用,则需重新定位URL,将先前checkout时的URL重新定位为最新的URL。

图标

常见错误

1.SVN修订号不连续

原因:SVN修订号是相对于整个配置库的,更新时看到的版本也是整个配置库的修订号,并不是某一个目录的修订号。

解决方法:无,SVN特色。

2.修改工作副本后,提交时提示“Resource out of date”,提交失败。

原因:工作副本不是最新版本,提交失败。

解决方法:先更新后再提交,遇冲突时解决冲突后再提交。

3.提示400错误

原因:操作者某些操作不准确,引起混乱,可能属于SVN客户端本身的bug

解决方法:暂时无很好的解决方法。

4.提示403错误

原因:不能进行该操作。比如URL不对;未开通该目录相关权限;用户名密码不对等。

解决方法:检查操作对应的URL是否正确,是否有权限,输入的用户名和密码是否正确等,根据错误解决问题。

5.提示需“清理(clean up)”

原因:服务器问题,一个SVN指令不能成功地完成,你的工作副本因此被滞留在一个不一致的状态。

解决方法:在上一层目录执行清理动作(clean up),若执行不成功,根据错误提示,删除引起不能清理的文件夹,然后update。

6.不能正常检出,提示URL过长

原因:目录过深,即URL过长,SVN客户端的bug,目前发现V1.5.3版本存在该问题。

解决方法:在上一层目录检出,或许更换SVN客户端安装版本,同时注意建立配置库目录时不易建立过深的目录。

7.本地副本不能删除,提示text-base过长

原因:目录过深。

解决方法:修改目录的名字,缩短工作副本目录名字。

8.删除/重命名/移动/拷贝文件,提交后,服务器上与预期结果不一致

可能原因:使用WINDOWS删除或者重命名/移动命令进行操作. SVN有专有的Delete/Rename/move/copy命令,对于WINDOWS命令不能识别,使用WINDOWS命令会出现混乱。

解决方法:还原到前一版本,重新使用SVN自身Delete/Rename/move/copy命令。

9.将所有修改都提交后红色感叹号不消失

原因:页面刷新比较慢。

解决方法:刷新页面或者重启电脑。

10.使用比较功能时,提示“ is not a valid text file”!*

原因:不可编辑的文件不能比较具体的内容。

解决方法:暂时无。

11.能执行历史版本的日志信息修改动作,但是“ok”确定却不成功,提示出错

原因:SVN默认状态下不允许修改日志信息。

解决方法:在SVN上服务器上增加 pre-revprop-change hook.但不建议使用

12.受版本控制的文件,显示”奇怪的“符号,如灰色的勾勾等

原因:SVN的特色图标重载:处于不同的状态,显示不同的图标。

解决方法:可以通过TortoiserSVN-Setting中的Icon Set中查看各个图标表示的状态。

13.域帐户密码修改后,SVN的命令不能成功执行

原因:密码错误,先前使用SVN命令时保存了认证信息,所以SVN命令的不能执行成功。

解决方法:在桌面上按右键,选择Setting命令,进入Save date,将认证信息这一项clear掉。这样重新执行所需的SVN命令,即会出现让您输入用户名和密码。

SVN命令解析以及问题解决(update...)相关推荐

  1. ubuntu中的apt终端命令解析

    ubuntu中的apt终端命令解析 apt(Advanced Packaging Tool)是ubuntu下的安装包管理工具,用于大部分软件的更新卸载: $ sudo apt install 软件名: ...

  2. 【SVN】linux下svn命令参数详解(二)

    svn全部子命令详解 1.svn help 2.svn add 3.svn blame 4.svn cat 5.svn changelist 6.svn checkout 7.svn cleanup ...

  3. 开发人员常用SVN命令

    开发人员常用SVN命令 Created by Shunzi. (1) 导入项目 $ cd ~/project $ mkdir -p svntest/{trunk,branches,tags} $ sv ...

  4. Mac下使用svn命令

    Mac系统自带svn命令,能够很方便的同步更新代码,使用方法: 1.导入项目 svn import /Users/username/Desktop/Project1 svn://192.168.1.1 ...

  5. Mac系统下SVN命令

    Mac系统下SVN命令 安裝 Subversion 首先您須要在您所要工作的機器上安裝 Subversion 這套系統. 若您的機器上已經安裝好了, 您可以跳過這一步. 若您在 FreeBSD 底下, ...

  6. svn在linux下的使用(svn命令)[转]

    svn在linux下的使用(svn命令)[转] 原地址:http://www.rjgc.net/control/content/content.php?nid=4418 1.将文件checkout到本 ...

  7. 详解Linux命令行下常用svn命令

    2019独角兽企业重金招聘Python工程师标准>>> 本文讲述了Linux命令行下常用svn命令的使用方法,希望对您有所帮助. 1.Linux命令行下将文件checkout到本地目 ...

  8. bat使用命令解析-详细(转)

    bat命令解析 目录 第一章 批处理基础 第一节 常用批处理内部命令简介 1.REM 和 :: 2.ECHO 和 @ 3.PAUSE 4.ERRORLEVEL 5.TITLE 6.COLOR 7.mo ...

  9. SVN命令--命令大全

    原文网址:SVN命令--命令大全_IT利刃出鞘的博客-CSDN博客 大部分的发行版都已经提供Subversion套件,ubuntu下安装subversion客户端:  sudo apt-get ins ...

最新文章

  1. 【第一道计算几何题】 UVA11178 Morley‘s Theorem (二维几何,旋转直线求求交点)
  2. windoes硬盘备份(数据迁移)的方法
  3. linux中 tar 报参数列表过长,四种解决”Argument list too long”参数列表过长的办法...
  4. wp自定义帖子没标签_ofollow标签的作用有重大变化
  5. java class实例化对象_使用Class对象实例化Java类型参数/ generic
  6. ASA 5520配置failover及双出口
  7. 安装SQL 2016的时候 Microsoft R Open 和 Microsoft R Server 安装文件的位置
  8. 如何让语音芯片与功放芯片之间更好的配合,使得产品音效更好
  9. Windows下用命令行注销用户(包括注销其他用户)
  10. 【商业数据分析】—— 用户价值RFM模型详解(小仙女搬运工)
  11. VB实现自动生成统计图表
  12. DNS域名服务器114.114.114.114和8.8.8.8
  13. MemSQL:号称世界上最快的内存-关系型数据库 兼容MySQL但快30倍
  14. 2022-09-12-kvm介绍
  15. Jfrog 搭建本地maven仓库以及上传Android库
  16. Linux查看所有子文件夹及文件的数量
  17. 华为校招软件上机考试题目解析
  18. Blender 3D环境场景创建教程
  19. windows10连接共享打印机显示“0x0000011b”错误的解决方法
  20. 使用python爬虫抓站的一些技巧总结:进阶篇 (转)

热门文章

  1. 计算机一级wps练习题,2017年计算机一级WPS练习题及答案
  2. echarts横向左右对比柱状图
  3. 移动端 touch事件 过渡事件 动画事件
  4. 帮公司面试了一个32岁的程序员,只因这一个细节,被我一眼看穿是培训班出来的,没啥工作经验...
  5. 一眼就能看懂的cin.ignore()函数详解
  6. 小程序开发笔记《二》json转数组
  7. 对象遍历(对象forEach遍历)
  8. Oracle ltrim() 函数用法
  9. Bose发售iPod用音系统「SoundDock Series II」
  10. Windows版本HBuilderX3.4.7.20220422 免打扰模式快捷键问题