Svn 从修订版恢复
我正在使用乌龟SVN 我最近签入了大量代码(一次提交)。在3个小时的会议上,他们决定放弃我的一堆代码和那个功能。我的老板想让我用那个应用程序区域的旧代码将Subversion放回原位 我想大概有3-4个文件受到影响。在上一次提交中,我提交了新特性changs,我需要将这些文件回滚到我签入它们之前的状态 所以,我真的不明白恢复到修订版会做什么。我继续,在日志中找到了过去提交中这些文件的最新版本,右键单击日志中的这些文件,并将其恢复为修订版 现在这会用旧版本完全替换我的本地副本吗?如果我只想返回上一次签入的功能的一个子集,我这样做对吗 那么,一旦恢复到该文件的本地版本,是否会丢失所有更改?它看起来像是把旧的和我的本地代码合并在一起了…嗯,这不完全是我所期望的 (是的,我从subversion的文档中读到了这一页,除了他们简要介绍的技术方式外,它的含义并不十分清楚或透彻,这是一种非常高级的方式,并且跳过了工作副本中本地实际发生的基础) 让我们总结一下我所做的:Svn 从修订版恢复,svn,tortoisesvn,Svn,Tortoisesvn,我正在使用乌龟SVN 我最近签入了大量代码(一次提交)。在3个小时的会议上,他们决定放弃我的一堆代码和那个功能。我的老板想让我用那个应用程序区域的旧代码将Subversion放回原位 我想大概有3-4个文件受到影响。在上一次提交中,我提交了新特性changs,我需要将这些文件回滚到我签入它们之前的状态 所以,我真的不明白恢复到修订版会做什么。我继续,在日志中找到了过去提交中这些文件的最新版本,右键单击日志中的这些文件,并将其恢复为修订版 现在这会用旧版本完全替换我的本地副本吗?如果我只想返回上一
但我对这一切有点动摇和困惑。如果我接近这个正确的方向,如果我应该使用revert back,以及它在封面下到底在做什么。我看到它已经合并了,但是什么??我只想把这4个特定文件放回以前的状态..不是我在这里开始提到的我刚刚提交的全部提交..只是与特定代码区域相关的特定文件..其余文件可以保持提交状态并由其他任何人下载。strong text您可能对我对刚才有一个非常类似的问题: 基本上,您最好的行动计划可能是在上一版本中重新检查代码,然后将该代码作为最新版本提交
如果您发现它正在将旧副本与磁盘上的版本合并,最好的修复方法是删除本地副本,然后干净地签出文件的指定版本。一旦你得到它,你就可以重新提交它。你可能对我刚才回答的一个非常类似的问题感兴趣: 基本上,您最好的行动计划可能是在上一版本中重新检查代码,然后将该代码作为最新版本提交
如果您发现它正在将旧副本与磁盘上的版本合并,最好的修复方法是删除本地副本,然后干净地签出文件的指定版本。一旦你得到了它,你可以重新提交它。假设你想恢复你在版本1234中所做的更改:只需合并从1234到1234-1的差异 在CLI中,这将是:
svn merge-r 1234:1233http://your-repo/ &&svn ci
在OrtoiseSVN中,获得一个合并对话框,“合并一系列修订”,输入1234作为要合并的修订,然后单击“反向合并”。然后检查是否没有任何冲突(与其他人在1234年后所做的更改),并进行签入。那么你的头部修正版就不会有那个代码了
我不确定您是否可以在Ottoisesvn中的特定文件上这样做。我在CLI中做到了这一点,您也可以尝试(CLI工具、TortoiseSVN、AnkhSVN,它们都共享元数据)
SVN仍然记得您编写了这段代码,这就是它的设计目的。如果没有真正的理由从SVN中删除此代码(如法律、勒索或其他),请保留它。假设您想恢复在1234版中所做的更改:只需将1234与1234-1的差异合并即可 在CLI中,这将是:
svn merge-r 1234:1233http://your-repo/ &&svn ci
在OrtoiseSVN中,获得一个合并对话框,“合并一系列修订”,输入1234作为要合并的修订,然后单击“反向合并”。然后检查是否没有任何冲突(与其他人在1234年后所做的更改),并进行签入。那么你的头部修正版就不会有那个代码了
我不确定您是否可以在Ottoisesvn中的特定文件上这样做。我在CLI中做到了这一点,您也可以尝试(CLI工具、TortoiseSVN、AnkhSVN,它们都共享元数据)
SVN仍然记得您编写了这段代码,这就是它的设计目的。如果没有真正的理由从SVN中删除此代码(例如,法律或勒索或其他),请保留i