情况背景:
ibank.pdm文件最新版本有问题,版本号为5051。 我想在5050的版本上修改后提交,覆盖5051版本的修改,也就是经过我修改后的5050版本,覆盖5051版本的修改,提交成功并成为最新的版本5052。
 
使用TortoiseSVN软件实现,版本1.6.10,步骤如下:
1.先将现在的5051版本ibank.pdm更新到我想要的5050版本
2.修改5050版本ibank.pdm,修改完毕后备份到另一个地方。不是放在当前svn目录下就好,避免等下更新会对现有的5050版本ibank.pdm有影响。
3.备份完毕后,删除现在5050版本的ibank.pdm,更新最新的5051版本ibank.pdm下来。
4.删除刚更新下来的5051版本ibank.pdm,将刚备份的修改后的5050版本ibank.pdm复制到当前svn目录,提交。
 
成功覆盖提交!现在最新版本5052是5050版本修改后的一个版本,5051版本的内容成功覆盖。
 
这里解释下为什么有3、4这样的步骤呢?
因为SVN提交的文件限定是在最新的版本上提交,若是在旧版本上的修改并提交,会错误提示你,请更新你的文件到最新版本。但是在我现在的情况下,我若乖乖更新,5051版本的ibank.pdm修改出会影响到我现在的5050版本,并且会有冲突,况且我想最新的版本也就是5052,没有5051版本的修改,只是5050版本修改后的版本。所以我利用TortoiseSVN文件原理,TortoiseSVN信息会将SVN信息记录到.svn文件夹中。它能判断出我的ibank.pdm是5050版本,不是最新的版本5051,也是这个文件夹下记录的信息的功劳。所以我将计就计,先备份我修改后的5050版本ibank.pdm,然后删除,为什么删除?因为最新版本5051版本修改出跟现在有很多的不同处,会提示文件冲突,当然你手动修改冲突出也是可以的,若你不嫌麻烦的话。所以我就先删除,再更新。这样更下来的ibank.pdm是5051版本,并且文件没有冲突提示。这是.svn文件夹记录的信息就是我的ibank.pdm是5051版本,于是我再把5051版本ibank.pdm删除,把刚备份的修改后的5050版本复制过来,提交。SVN找出.svn文件夹记录的ibank.pdm版本信息是5051版本(实际上5050版本),误认为我现在的ibank.pdm是5051版本后的修改版本,于是我就能躲掉请你更新文件为最新版本的校验,成功提交了。
 
自我总结:
这里充分利用了狡黠的原理,比如说过一条河,直走不能通过,我绕一下路通过呗。所以说,解决问题不能一根筋,要灵活、变通。
 
 

TortoiseSVN 覆盖SVN仓库最新版本提交的更多相关文章

  1. SVN仓库连同版本信息迁移新服务器的步骤

    SVN仓库连同版本信息迁移新服务器的步骤 步骤一:导出(1)链接原服务器,找到SVN Server安装路径下的bin文件,并复制文件路径,如 C:\Program File\SVN Server\bi ...

  2. 使用git svn clone迁移svn仓库(保留提交记录)

    使用git svn clone迁移svn仓库 clone命令可以指定很多参数,主要用到这些,你也可以使用git svn help查看完整的参数列表. git svn clone https://172 ...

  3. svn查看指定版本提交信息的命令

    通过svn命令查看指定版本提交的文件和日志信息 svn log -r ARG -v ARG :版本 可以是如下之一: NUMBER 版本号 '{' DATE '}' 在指定时间以后的版本 'HEAD' ...

  4. git将远程仓库最新版本拉到本地仓库

    一.正规做法有两种.git fetch和git pull. 注意不管用fetch还是pull,做之前都要在本地仓库做一次git commit,确保,本地仓库和工作目录及缓存一致.1.git fetch ...

  5. SVN仓库删除最近的提交,还原到某日期以前的版本(svn仓库 删除最近几次更改)

    由于某日删除了SVN仓库的大量内容,现在突然想恢复,又要保留LOG的连贯性(恢复出来的已删除文件,会是新增,没有之前的历史Log了),所以才有了这需求. Dump版本库的版本(457以后版本不要) - ...

  6. Github如何提交修改的代码以及更新到最新版本

    最近有人问我,Github上如何把修改fork到的代码提交到原版本上去,以及如何更新到最新的版本.只针对初学者,大神的话勿喷. 首先说第一个问题. 进入到你修改的某个repository里面(以本人的 ...

  7. maven 本地仓库无法更新到最新版本的jar包

    maven 本地仓库无法更新到最新版本的jar包 描述:maven 本地仓库无法更新最新版的jar包导致项目一直报错 解决:去jar包版本所在目录,删除掉所有红框内文件,重新用ide导入

  8. 细说SVN集中式版本控制器

    svn全称Subversion,实现多人开发同一个项目时,对源代码进行管理的工具.在公司里边,一个项目是由多人同时在开发,大家在本地自己电脑开发php代码,完毕后就commit上传给服务器运行.  如 ...

  9. SVN集中式版本控制器的安装、使用与常见问题汇总

    SVN是Subversion的简称,是一个开放源代码的版本控制系统,它采用了分支管理系统,集中式版本控制器 官方网站:https://www.visualsvn.com/ 下载右边的服务器端,左边的客 ...

随机推荐

  1. 【BZOJ】【2878】【NOI2012】迷失游乐园

    树形+基环树DP/数学期望 然而我并不会做…… 题解戳这里:http://blog.csdn.net/u011265346/article/details/46328543 好吧先考虑一个简单点的,当 ...

  2. HorizontalScrollView的使用演示样例

    MainActivity例如以下: package cc.cv; import android.os.Bundle; import android.view.LayoutInflater; impor ...

  3. Informatica 常用组件Aggregator之一 聚合表达式

    转换类型:已连接.主动        聚合转换允许您执行聚合计算,比如平均值和总和.聚合转换与表达式转换不同,您可以使用聚合转换对多组执行计算.而表达式转换只允许您逐行地执行计算.        使用 ...

  4. C#中三种定时器对象的比较 【转】

    https://www.cnblogs.com/zxtceq/p/5667281.html C#中三种定时器对象的比较 ·关于C#中timer类 在C#里关于定时器类就有3个1.定义在System.W ...

  5. App优化 StrictMode 严格模式

    StrictMode简介 StrictMode最常用来捕捉应用程序的主线程,它将报告与线程及虚拟机相关的策略违例.一旦检测到策略违例policy violation,你将获得警告,其包含了一个栈tra ...

  6. permission 文档 翻译 运行时权限

    文档位置:API24/guide/topics/security/permissions.html  System Permissions 系统权限 Android is a privilege-se ...

  7. IOS之NSFileManager 和NSFileHandle

    在现阶手机app的临时缓存文件渐渐增多,在app开发中对于移动设备文件的操作越来越多,我们IOS中对于文件的操作主要涉及两个类NSFileManager 和NSFileHandle,下面我们就看看如何 ...

  8. UITabBarController — 标签视图控制器

    UITabBarController - 标签视图控制器 UITabBarController 分为三层结构: (1).tab bar (2.)Custom Content (3.). Tab bar ...

  9. js 切换隐藏

    先试试 显示\隐藏切换 脚本之家欢迎您 切换隐藏 <style type="text/css"> #thediv { width:200px; height:100px ...

  10. [Node.js] Level 2 new. Event

    Chat Emitter We're going to create a custom chat EventEmitter. Create a new EventEmitter object and ...