SVN命令解析以及问题解决(update...)
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...)相关推荐
- ubuntu中的apt终端命令解析
ubuntu中的apt终端命令解析 apt(Advanced Packaging Tool)是ubuntu下的安装包管理工具,用于大部分软件的更新卸载: $ sudo apt install 软件名: ...
- 【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 ...
- 开发人员常用SVN命令
开发人员常用SVN命令 Created by Shunzi. (1) 导入项目 $ cd ~/project $ mkdir -p svntest/{trunk,branches,tags} $ sv ...
- Mac下使用svn命令
Mac系统自带svn命令,能够很方便的同步更新代码,使用方法: 1.导入项目 svn import /Users/username/Desktop/Project1 svn://192.168.1.1 ...
- Mac系统下SVN命令
Mac系统下SVN命令 安裝 Subversion 首先您須要在您所要工作的機器上安裝 Subversion 這套系統. 若您的機器上已經安裝好了, 您可以跳過這一步. 若您在 FreeBSD 底下, ...
- svn在linux下的使用(svn命令)[转]
svn在linux下的使用(svn命令)[转] 原地址:http://www.rjgc.net/control/content/content.php?nid=4418 1.将文件checkout到本 ...
- 详解Linux命令行下常用svn命令
2019独角兽企业重金招聘Python工程师标准>>> 本文讲述了Linux命令行下常用svn命令的使用方法,希望对您有所帮助. 1.Linux命令行下将文件checkout到本地目 ...
- bat使用命令解析-详细(转)
bat命令解析 目录 第一章 批处理基础 第一节 常用批处理内部命令简介 1.REM 和 :: 2.ECHO 和 @ 3.PAUSE 4.ERRORLEVEL 5.TITLE 6.COLOR 7.mo ...
- SVN命令--命令大全
原文网址:SVN命令--命令大全_IT利刃出鞘的博客-CSDN博客 大部分的发行版都已经提供Subversion套件,ubuntu下安装subversion客户端: sudo apt-get ins ...
最新文章
- 【第一道计算几何题】 UVA11178 Morley‘s Theorem (二维几何,旋转直线求求交点)
- windoes硬盘备份(数据迁移)的方法
- linux中 tar 报参数列表过长,四种解决”Argument list too long”参数列表过长的办法...
- wp自定义帖子没标签_ofollow标签的作用有重大变化
- java class实例化对象_使用Class对象实例化Java类型参数/ generic
- ASA 5520配置failover及双出口
- 安装SQL 2016的时候 Microsoft R Open 和 Microsoft R Server 安装文件的位置
- 如何让语音芯片与功放芯片之间更好的配合,使得产品音效更好
- Windows下用命令行注销用户(包括注销其他用户)
- 【商业数据分析】—— 用户价值RFM模型详解(小仙女搬运工)
- VB实现自动生成统计图表
- DNS域名服务器114.114.114.114和8.8.8.8
- MemSQL:号称世界上最快的内存-关系型数据库 兼容MySQL但快30倍
- 2022-09-12-kvm介绍
- Jfrog 搭建本地maven仓库以及上传Android库
- Linux查看所有子文件夹及文件的数量
- 华为校招软件上机考试题目解析
- Blender 3D环境场景创建教程
- windows10连接共享打印机显示“0x0000011b”错误的解决方法
- 使用python爬虫抓站的一些技巧总结:进阶篇 (转)
热门文章
- 计算机一级wps练习题,2017年计算机一级WPS练习题及答案
- echarts横向左右对比柱状图
- 移动端 touch事件 过渡事件 动画事件
- 帮公司面试了一个32岁的程序员,只因这一个细节,被我一眼看穿是培训班出来的,没啥工作经验...
- 一眼就能看懂的cin.ignore()函数详解
- 小程序开发笔记《二》json转数组
- 对象遍历(对象forEach遍历)
- Oracle ltrim() 函数用法
- Bose发售iPod用音系统「SoundDock Series II」
- Windows版本HBuilderX3.4.7.20220422 免打扰模式快捷键问题