svn命令使用常见问题
1.如何添加文件 ?
svn add filename
svn ci -m "add file"
2. svn ci 出现冲突
经常多人开发时难免多个人修改同一个文件导致冲突发送,或者在merge的时候也会出现,出现冲突时,svn up 出现
elect: (p) postpone, (df) diff-full, (e) edit, //(p) 推迟,(df) 显示全部差异,(e) 编辑,
(mc) mine-conflict, (tc) theirs-conflict, //(mc) 我的版本, (tc) 他人的版本,
(s) show all options: //(s) 显示全部选项:
一般选择p,会将冲突文件下载到你本地来处理,可以在本地看到test.txt(文件合并版本) test.txt.mine(我修改的版本) test.txt.r21(其他人修改前的版本) test.txt.r22(其他人修改的版本)这么几个文件,叫上其他人一起来修改test.txt合并版本,修改完成了删除删 除<<<<<<< .mine、=======和>>>>>>> .r22。再输入:
svn resolve --accept working test.txt (该命令会删除test.txt.mine test.txt.r21 test.txt.r22)
svn ci -m ’some comment’ a.txt
3. 版本合并,正常情况一个项目可能会有多个分支,当分支需要合并的时候该如何做?
eg:假设分支1要合并到主干,本地切换到分支1的文件目录,svn merge other_svn_url,你也可以指定要合并的分支版本svn merge other_svn_url -r22:HEAD ,出现冲突如2步骤解决。
最后记得,svn ci -m "xxx"
4. svn delete不小心删错了文件如何恢复
1) 第一种情况的svn delete filename了但是还没有commit(svn ci),那么可以使用 svn revert filename
2)如果已经commit了,那么可以通过创建新的分支来恢复,首先svn log --verbose --stop-on-copy svn_repo_url查看版本记录,使用svn cp source_url@version des_url -m "xx"创建新的分支,eg:假设当前r8是包含没有删除文件的版本号,
svn cp http://www.svnrepo.com/project/branche1/@8 http://www.svnrepo.com/project/branche2 -m "xxx"(branche1为之前svn url地址目录,别少了/,不然在新的分支文件结构是branche2/branche1,@8是版本号),然后在svn co http://www.svnrepo.com/project/branche2,就可以找回删除的文件
3)如果使用工具的请转这里
5. svn diff 详解
$ svn diff -r 2:3 rules.txt
(1)Index: rules.txt
(2)===================================================================
(3)--- rules.txt (revision 2)
(4)+++ rules.txt (revision 3)
(5)@@ -1,4 +1,4 @@
(6)Be kind to others
(7)-Freedom = Chocolate Ice Cream
(8)+Freedom = Responsibility
(9)Everything in moderation
(10)Chew with your mouth open
第一行,显示文件
第二行,分隔符
第三行,老版本用“-”表示
第四行,新版本用“+”表示
第五行,老版本显示1~4行,新版本显示1~4行
第六行,两个版本都有
第七行,只有老版本有
第八行,只有新版本有
第九行,两个版本都有
第十行,两个版本都有
==================
$ svn diff --revision PREV:COMMITTED foo.c
# shows the last change committed to foo.c $ svn log --revision HEAD
# shows log message for the latest repository commit $ svn diff --revision HEAD
# compares your working file (with local mods) to the latest version
# in the repository. $ svn diff --revision BASE:HEAD foo.c
# compares your “pristine” foo.c (no local mods) with the
# latest version in the repository $ svn log --revision BASE:HEAD
# shows all commit logs since you last updated $ svn update --revision PREV foo.c
# rewinds the last change on foo.c.
# (foo.c's working revision is decreased.)
svn命令使用常见问题的更多相关文章
- MySQL常用命令和常见问题
MySQL常用命令和常见问题 --创建数据库并设置字符集 create database wip default character set utf8 collate utf8_general_ci; ...
- [Linux & SVN] SVN介绍及Linux下SVN命令收录
1. SVN是什么? SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上很多版本控制服务已从CVS迁移 ...
- 常用SVN命令
SVN命令 svn co svn://10.144.156.41/branches/webroot_2015_03_03_gift 表示check远程目录到当前目录下,co命令只能check目录,如 ...
- Linux SVN 命令详解(zz)
Linux下常用SVN命令 2012-04-02 11:46:00 标签:服务器 目录 Linux checkout linux系统 1.将文件checkout到本地目录 svn checkout p ...
- Mac SVN 命令行
Mac自带了SVN命令行,如我的升级到10.10(OSX yosemite)后命令行版本为1.7.10 以下是一些常用命令 1.将文件checkout到本地目录 svn checkout path(p ...
- linux下svn命令使用大全
最近经常使用svn进行代码管理,这些命令老是记不住,得经常上网查,终于找了一个linux下svn命令使用大全:1.将文件checkout到本地目录 svn checkout path(path是服务器 ...
- 日常开发使用SVN命令
现在把我日常开发中用到的svn命令总结出来,做个备忘,其实真正用到也就那几个. 如果遇到参数不知道使用或其它困难请使用:svn --help 得到帮助 1)检出: svn co svn地址 本地路径 ...
- mac 终端 svn 命令(转)
mac 终端 svn 命令 1.将文件checkout到本地目录 svn checkout path(path是服务器上的目录) 例如:svn checkout svn://192.168.1.1 ...
- svn命令行修改已提交的版本备注
svn命令行修改已提交的版本备注 参考文章: stackoverflow.com/questions/304383/how-do-i-edit-a-log-message-that-i-already ...
随机推荐
- Windows下面安装和配置Solr 4.9(三)支持中文分词器
首先将下载解压后的solr-4.9.0的目录里面F:\tools\开发工具\Lucene\solr-4.9.0\contrib\analysis-extras\lucene-libs找到lucene- ...
- Go TCP网路程序编写
client和server程序编写 面向长连接的编程 http://files.cnblogs.com/files/yyx1-1/Go_TCP.7z
- java 实现万年历
曾经初学java写万年历,都是採用主要的算法求出是否闰年闰月 计算公式例如以下 int year = 2014, month = 8, total = 0; if (month == 1 || mon ...
- Python 列表 sort() 方法
描述 Python 列表 sort() 方法对列表进行排序. 语法 sort() 方法语法: L.sort([key=None][,reverse=False]) 参数 key-- 可选参数, 如果指 ...
- /usr/local/ssl/lib/libssl.a: error adding symbols: Bad value
一.背景 编译第三方库A的时候提示依赖openssl库. 二.编译openssl库 去官网下载最新版本的openssl-1.0.2l.tar.gztar -zxvf openssl-1.0.2l.ta ...
- [WARNING] mod_event_socket.c:2641 IP 172.18.1.112 Rejected by acl "loopback.auto"
一.目标修改event_socket配置,使之能够建立远端ESL链接. 二.步骤 . vim ../autoload_configs/event_socket.conf.xml . 默认的监听地址配置 ...
- mysql-5.7 innodb 的并行任务调度详解
一.innodb并行任务调度是什么: 这里要“考古”一下了,不然问题说不清楚.上大学的时候老师和我们说最初的计算机只有一个核心,并且一次也只能做一件事, 如果你有两件事要用到计算机,在第一件事没有做完 ...
- Disable Oracle Automatic Jobs
By default, Oracle will run some maintance jobs every night. If you don't want to run those jobs, yo ...
- js冒泡法和数组转换成字符串示例代码
将数组转换成字符串的方法有很多,讲解下js冒泡法的使用.js代码: //js冒泡法与数据转换为字符串的例子 //整理:www.jbxue.com window.onload = function(){ ...
- U3D-LookAt插值动画
var qua = Quaternion.FromToRotation(Vector3.forward, target.transform.position - transform.position) ...