本地开发环境出现一个问题,用revert完美解决。

问题描述:

文件static/image/common/jiqiaodaren.png已经被提交到svn上,但是我的开发环境因未与svn同步,所以没有这个文件。

而且我没有确认这个文件是否已存在svn上,错误地认为这个文件是个新文件。

我做了以下操作:

1,svn add static/image/common/jiqiaodaren.png
2,svn ci static/image/common/jiqiaodaren.png -m ''

第1步未提示,第2步提示:

新增 (二进制) static/image/common/jiqiaodaren.png
svn: 提交失败(细节见下):
svn: 文件“/svn/***/trunk/static/image/common/jiqiaodaren.png”已存在

===问题描述完毕===

中间步骤

于是我删除本地文件,获得svn上更新。

1,rm static/image/common/jiqiaodaren.png
2,svn up static/image/common/jiqiaodaren.png
svn: 不能复制“static/image/common/.svn/text-base/jiqiaodaren.png.svn-base”到“static/image/common/.svn/tmp/jiqiaodaren.png.tmp.tmp”: 没有那个文件或目录

之后胡乱尝试

1,svn up static/image/common/jiqiaodaren.png
svn: 不能复制“static/image/common/.svn/text-base/jiqiaodaren.png.svn-base”到“static/image/common/.svn/tmp/jiqiaodaren.png.tmp.tmp”: 没有那个文件或目录 2,svn st static/image/common/jiqiaodaren.png
! static/image/common/jiqiaodaren.png 3,svn up static/image/common/jiqiaodaren.png
已还原“static/image/common/jiqiaodaren.png”
svn: 无法新增文件“static/image/common/jiqiaodaren.png”:同名物件已存在 4,svn st static/image/common/jiqiaodaren.png
A static/image/common/jiqiaodaren.png

===中间步骤完毕===

解决

直到遇到这个命令:

1 svn revert static/image/common/jiqiaodaren.png
已恢复“static/image/common/jiqiaodaren.png” 2 svn st static/image/common/jiqiaodaren.png
? static/image/common/jiqiaodaren.png 3 svn up static/image/common/jiqiaodaren.png
svn: 无法新增文件“static/image/common/jiqiaodaren.png”:同名物件已存在 4 rm static/image/common/jiqiaodaren.png 5 svn up static/image/common/jiqiaodaren.png
A static/image/common/jiqiaodaren.png
更新至修订版 1384。

不知道原理,反正是解决了。我勒个去

===解决===

现象描述

现象:

在svn服务器上同事删掉了我的分支,然后又恢复回我的分支到新的版本。我本地环境还是原先的版本。

现在我的本地版本是100,服务器的版本是200。

问题:执行 svn update 提示有冲突,svn commit也提示:SVN commit:remains in tree-conflict

===现象描述结束===

解决

解决:

1,我的本地版本放到临时目录(src_bak)中:rsync -r myBranch/ src_bak/ --exclude=".svn"

2,删除我的本地版本:rm -rf myBranch/*

3,更新本地版本库到最新:svn update myBranch/*

4,执行文件恢复命令:svn revert myBranch --depth infinity

5,检查文件状态:svn status

发现没有冲突,和checkout的效果一样。解决

===解决结束===

===总结如下===

如果本地修改了某个文件未提交,服务器上同时提交了同一文件的修改,正常来讲,svn up就能列出不一致的文件,或者是M状态,或者是C状态,或者是可以merge的。

但某些情况下,本地的版本和远程的版本无法合并,这个时间通常已经有本地svn操作,但无法合并到server端。这种情况下就需要把本地的提交撤销,命令是:svn revert [-R] file。

思路就是:先备份要提交的文件,然后revert,删除本地文件,update,commit。

如果文件很多,先备份这个目录,删除本地文件,update,revert -R,commit。

svn revert的更多相关文章

  1. SVN: revert all command

    If you accidentally marked all your files as "delete" (your file/folder has a red x on it) ...

  2. svn add后的数据如何取消-svn revert??--zz

    svn add后的数据如何取消-svn revert?? 有时候你发现svn add后,这个提交的数据又不需要了.这时候需要有svn revert来处理了. 原文链接:http://hi.baidu. ...

  3. SVN revert命令的使用

    evert命令顾名思义就是对修改过的东西进行回滚操作.一般有2种情况发生时需要用到回滚的操作: 1,修改过的东西没有递交(commit) 这种情况下revert会取消之前的修改 用法:#svn rev ...

  4. svn:revert to this version 和 revert changes from this version的区别

    假设我们有许多个版本,版本号分别是1-10 如果我们在7这里选择revert to this version那么7之后的8,9,10的操作都会被消除 如果在7选择revert changes from ...

  5. svn:revert to this version 和 revert changes from this version的区别 假设我们有许多个版本,版本号分别是1-10

    假设我们有许多个版本,版本号分别是1-10 如果我们在7这里选择revert to this version那么7之后的8,9,10的操作都会被消除 如果在7选择revert changes from ...

  6. 第14月第30天 svn 撤销ignore revert

    1. 直接到被ignore的位置,执行: svn add <你被ignore的文件名> --no-ignore –no-ignore是取消忽略 如果是add目录,你可以: svn add ...

  7. svn Can't revert without reverting children 解决方案

    EMZ3.0 qrh$ svn commit -m ""svn: E155010: Commit failed (details follow):svn: E155010: '/U ...

  8. svn的revert、checkout、clean up、setting

    svn revert 描述恢复所有对文件和目录的修改,并且解决所有的冲突状态. svn revert不会只是恢复工作拷贝中一个项目的内容,也包括了对属性修改的恢复.最终,你可以使用它来取消所有已经做过 ...

  9. svn 常用命令总结

    svn 命令篇 svn pget svn:ignore // 查看忽略项 svn commit -m "提交说明" // 提交修改 svn up(update) // 获取最新版本 ...

随机推荐

  1. Oracle获取时间日期月份星期数

    1.日期和字符转换函数用法(to_date,to_char)select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') as nowTime from dual; ...

  2. 二十六、oracle pl/sql 分页

    一.无返回值的存储过程 古人云:欲速则不达,为了让大家伙比较容易接受分页过程编写,我还是从简单到复杂,循序渐进的给大家讲解.首先是掌握最简单的存储过程,无返回值的存储过程. 案例:现有一张表book, ...

  3. 对dpkg: error processing package xxx (--configure) 的处理

    这个问题是在在安装Deepdive时候碰到的,具体来说在执行 sudo apt-get update碰到的sudo mv /var/lib/dpkg/info/ /var/lib/dpkg/info_ ...

  4. javascript DOM对象(2)

    访问兄弟节点 1. nextSibling 属性可返回某个节点之后紧跟的节点(处于同一树层级中). 语法: nodeObject.nextSibling 说明:如果无此节点,则该属性返回 null. ...

  5. 下载PhpStorm并进行激活

    1.首先登陆PhpStorm官网http://www.jetbrains.com/phpstorm/ 点击附图中的download now 按钮 2.第二步根据os x \wind\ linux进行下 ...

  6. ActionBar之style出现Cannot resolve symbol 'Theme' 错误

    今天 2014/03/08 00:49 刚刚升级 android studio 到了 0.5.0 版本,修复了许多 bug,包含当前这个问题,之前一直困扰我很久,莫名奇妙的提示主题样式找不到,无法解析 ...

  7. CodeForces 698B Fix a Tree

    并查集,构造. 先看一下图的特殊性,按照这种输入方式,一个点的入度最多只有$1$,因此,问题不会特别复杂,画画图就能知道了. 如果给出的序列中已经存在$a[i]=i$,那么随便取一个$a[i]=i$的 ...

  8. 第七十五节,CSS表格与列表

    CSS表格与列表 学习要点: 1.表格样式 2.列表样式 3.其他功能 一.表格样式 表格有五种独有样式,样式表如下:             属性               值           ...

  9. 第五十五节,IO多路复用select模块加socket模块,伪多线并发

    IO多路复用select模块加socket模块,伪多线并发,并不是真正的多线程并发,实际通过循环等待还是一个一个处理的 IO多路复用,lo就是文件或数据的输入输出,IO多路复用就是可以多用户操作 IO ...

  10. 7.hibernat实现双向一对多(多对一)

    1.创建如下项目结构 2.在项目的src下创建hibernate.cfg.xml主配置文件 <?xml version="1.0" encoding="UTF-8& ...