情况背景:
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. [转]C++之运算符重载(1)

    在前一节中曾提到过,C++中运行时的多态性主要是通过虚函数来实现的,而编译时的多态性是由函数重载和运算符重载来实现的.这一系列我将主要讲解C++中有关运算符重载方面的内容.在每一个系列讲解之前,都会有 ...

  2. 在Spark上运行TopK程序

    1. scala程序如下 package com.cn.gao import org.apache.spark.SparkConf import org.apache.spark.SparkConte ...

  3. Surrounded Regions leetcode java

    题目: Given a 2D board containing 'X' and 'O', capture all regions surrounded by 'X'. A region is capt ...

  4. YUI+Ant 实现JS CSS压缩

    今天研究了一下YUI yahoo开源框架,感觉很猛啊. 于是乎我做了一个YUI的ant实现,网上好多关于bat的实现,我就另辟蹊径,出个关于这个的ant实现,嘿嘿独一无二的文章,如果转载的话,其注明作 ...

  5. IOS UITableView多选删除功能

    UITbableView作为列表展示信息,除了展示的功能,有时还会用到删除,比如购物车.收藏列表等. 单行删除功能可以直接使用系统自带的删除功能,当横向轻扫cell时,右侧出现红色的删除按钮,点击删除 ...

  6. Nginx配置文件(nginx.conf)配置具体解释

    欢迎扫码增加Java高知群交流 Nginx的配置文件nginx.conf配置具体解释例如以下:   user nginx nginx ; Nginx用户及组:用户 组. window下不指定   wo ...

  7. 【HowTo ML】分类问题->神经网络入门

    非线性分类器(Non-linear hypotheses) 为什么使用非线性分类器 我们举几个栗子: 假如我们有一个数据空间如左上角坐标系所看到的,那么我们要的模型须要如右边公式所看到的的预測函数. ...

  8. GoLang中面向对象的三大特性

    有过 JAVA 语言学习经历的朋友都知道,面向对象主要包括了三个基本特征:封装.继承和多态.封装,就是指运行的数据和函数绑定在一起,JAVA 中主要是通过 super 指针来完成的:继承,就是指 cl ...

  9. GO语言基础map与函数

    1. map 1. 类似其它语言中的哈希表活着字典,以 key-value 形式存储数据 2. key 必须是支持 == 或 != 比较运算的类型,不可以是函数.map 或 slice 3. map ...

  10. 在CentOS/RHEL上设置SSH免密码登录

    本文会告诉你怎样在 CentOS/RHEL 上设置 SSH 免密码登录.自动登录配置好以后,你可以通过它使用 SSH (Secure Shell)和安全复制 (SCP)来移动文件. SSH 是开源的, ...