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命令使用常见问题的更多相关文章

  1. MySQL常用命令和常见问题

    MySQL常用命令和常见问题 --创建数据库并设置字符集 create database wip default character set utf8 collate utf8_general_ci; ...

  2. [Linux & SVN] SVN介绍及Linux下SVN命令收录

    1. SVN是什么? SVN是Subversion的简称,是一个开放源代码的版本控制系统,相较于RCS.CVS,它采用了分支管理系统,它的设计目标就是取代CVS.互联网上很多版本控制服务已从CVS迁移 ...

  3. 常用SVN命令

    SVN命令 svn co  svn://10.144.156.41/branches/webroot_2015_03_03_gift 表示check远程目录到当前目录下,co命令只能check目录,如 ...

  4. Linux SVN 命令详解(zz)

    Linux下常用SVN命令 2012-04-02 11:46:00 标签:服务器 目录 Linux checkout linux系统 1.将文件checkout到本地目录 svn checkout p ...

  5. Mac SVN 命令行

    Mac自带了SVN命令行,如我的升级到10.10(OSX yosemite)后命令行版本为1.7.10 以下是一些常用命令 1.将文件checkout到本地目录 svn checkout path(p ...

  6. linux下svn命令使用大全

    最近经常使用svn进行代码管理,这些命令老是记不住,得经常上网查,终于找了一个linux下svn命令使用大全:1.将文件checkout到本地目录 svn checkout path(path是服务器 ...

  7. 日常开发使用SVN命令

    现在把我日常开发中用到的svn命令总结出来,做个备忘,其实真正用到也就那几个. 如果遇到参数不知道使用或其它困难请使用:svn --help 得到帮助 1)检出: svn co svn地址 本地路径 ...

  8. mac 终端 svn 命令(转)

    mac 终端 svn 命令 1.将文件checkout到本地目录 svn checkout path(path是服务器上的目录)   例如:svn checkout svn://192.168.1.1 ...

  9. svn命令行修改已提交的版本备注

    svn命令行修改已提交的版本备注 参考文章: stackoverflow.com/questions/304383/how-do-i-edit-a-log-message-that-i-already ...

随机推荐

  1. Windows下面安装和配置Solr 4.9(三)支持中文分词器

    首先将下载解压后的solr-4.9.0的目录里面F:\tools\开发工具\Lucene\solr-4.9.0\contrib\analysis-extras\lucene-libs找到lucene- ...

  2. Go TCP网路程序编写

    client和server程序编写 面向长连接的编程 http://files.cnblogs.com/files/yyx1-1/Go_TCP.7z

  3. java 实现万年历

    曾经初学java写万年历,都是採用主要的算法求出是否闰年闰月 计算公式例如以下 int year = 2014, month = 8, total = 0; if (month == 1 || mon ...

  4. Python 列表 sort() 方法

    描述 Python 列表 sort() 方法对列表进行排序. 语法 sort() 方法语法: L.sort([key=None][,reverse=False]) 参数 key-- 可选参数, 如果指 ...

  5. /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 ...

  6. [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 . 默认的监听地址配置 ...

  7. mysql-5.7 innodb 的并行任务调度详解

    一.innodb并行任务调度是什么: 这里要“考古”一下了,不然问题说不清楚.上大学的时候老师和我们说最初的计算机只有一个核心,并且一次也只能做一件事, 如果你有两件事要用到计算机,在第一件事没有做完 ...

  8. Disable Oracle Automatic Jobs

    By default, Oracle will run some maintance jobs every night. If you don't want to run those jobs, yo ...

  9. js冒泡法和数组转换成字符串示例代码

    将数组转换成字符串的方法有很多,讲解下js冒泡法的使用.js代码: //js冒泡法与数据转换为字符串的例子 //整理:www.jbxue.com window.onload = function(){ ...

  10. U3D-LookAt插值动画

    var qua = Quaternion.FromToRotation(Vector3.forward, target.transform.position - transform.position) ...