zoukankan      html  css  js  c++  java
  • TortoiseSVN 覆盖SVN仓库最新版本提交



    情况背景:
    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版本后的修改版本,于是我就能躲掉请你更新文件为最新版本的校验,成功提交了。
     
    自我总结:
    这里充分利用了狡黠的原理,比如说过一条河,直走不能通过,我绕一下路通过呗。所以说,解决问题不能一根筋,要灵活、变通。
     
     
  • 相关阅读:
    大端小端与数字的二进制存储
    java基础之进制转换汇总
    (转) tcp udp通讯协议
    JAVA Tcp Udp的通讯实现(转)
    ExecutorService创建线程使用 转()
    转:java中的位运算
    SVN服务器的搭建与TortoiseSVN的使用
    [Mark]VM Cone & Template
    [Mark]VM migrate
    [Mark] ethtool command in REHL OS
  • 原文地址:https://www.cnblogs.com/svennee/p/4068869.html
Copyright © 2011-2022 走看看