`

svn恢复到某个版本

阅读更多
Subversion将文件存放在中心版本库里,这个版本库很像一个普通的文件服务器。不同的是,它可以记录每一次文件和目录的修改情况,这样就可以在需要的回滚时,将数据恢复到以前的版本,并可以查看数据的更改细节。

问题描述

假设原来的版本为 r10,我修改了工作副本,并提交,变成r11;后来又修改,提交,变成r12。

最终我发现这两次提交都有问题,如何让代码仓库中的内容恢复到r10的内容呢?(最好是放弃r11和r12,或者可以使r13的内容跟r10相同)

解决方案

$ svn merge -r 12:10 http://svn.example.com/repos/myproject/trunk -m "message"
常用操作

还原到某个版本

svn up -r 版本号
svn up -r 版本号 文件名称
还原改动

对应提交(commit),要有类似回滚(rollback)的操作。

$ svn revert
还原已提交的改动

revert只适合未提交的情况。 如果已经提交,发现问题,要回退到之前的修订版。 首先需要:

$ svn up
让本地工作拷贝更新到最新状态。 然后:

$ svn log your_file_path
查看文件日志,这时候提交时填写的说明信息就派上用场了。 查看两个修订版之间的不同:

$ svn diff -r 旧修订版序号:新修订版序号 your_file_path
决定用哪个旧的修订版号后,用旧的修订版号文件覆盖新的修订版号文件。

$ svn merge -r 新修订版序号:旧修订版序号 your_file_path
还需要:

$ svn commit -m “恢复到某修订版(某修订版作废)”
这个还原是所谓的,不是用旧的版本号替代,而是将旧文件覆盖新文件。

原文网址:http://demi-panda.com/2012/11/13/version-revert
分享到:
评论

相关推荐

    svn 回退/更新/取消至某个版本命令

    - 示例:`svn update -r 10`,将当前工作副本更新到版本10。 - **svn help update**: - 此命令用于显示`svn update`的帮助文档。 - **使用方法**:`svn help update`或简写`svn help up`。 #### 三、svn update...

    SVN备份操作(包括完全备份,增量备份和同步版本库)

    Subversion(简称SVN)作为一款广泛使用的集中式版本控制系统,在备份方面提供了多种机制来满足不同场景的需求,主要包括完全备份、增量备份以及版本库同步等方法。 #### 二、完全备份 完全备份是最基础也是最直接...

    svn操作手册 svn版本控制

    `svn ci` 命令用于将工作副本的更改提交到版本库。 **3.4 `svn st`** `svn st` 命令显示工作副本的状态,包括哪些文件已被修改、新增或删除。 **3.5 `svn log`** `svn log` 命令用于查看提交日志,了解历史更改...

    svn回到某个历史版本的做法.rar

    svn commit -m "回退到版本r123,原因是... " ``` 在这里,`-m`后面是你的提交信息,解释为何回退到这个版本。 六、注意事项 1. 回退操作可能导致丢失最近的改动,所以在执行前确保你了解可能的后果。 2. 如果团队...

    SVN项目版本库模板

    这将把更改推送到版本库,并更新所有其他用户的副本。 **使用SVN的基本操作:** 1. **检出(Checkout)**:从版本库下载最新版本的项目到本地工作副本。 2. **更新(Update)**:获取仓库中的最新更改,同步到...

    删除svn代码管理器版本

    然而,有时候由于项目调整、错误操作或者不再需要特定版本的需求,可能需要从SVN中删除某个或某些版本。 删除SVN版本并非指删除项目本身,而是指撤销版本历史中的某一提交,使得这个提交在版本历史中不再可见。这...

    SVN版本回归小技巧

    通过删除服务器版本记录和更改版本信息,我们可以快速将项目状态恢复到某个历史版本。然而,这一过程涉及直接操作数据库,存在一定的风险和复杂度,因此在实施前必须充分考虑其必要性和潜在后果。正确的备份策略、...

    windows下将文件脱离svn管理

    有时候,由于各种原因,我们可能需要将某个项目或者文件从SVN的版本控制中移除,这通常涉及到删除SVN相关的元数据,而不是简单地从文件系统中删除文件。 描述中提到的博客链接指向了ITEYE上的一篇文章,但具体内容...

    SVN.zip 中文版本,无需注册

    1. 版本控制:SVN记录每次对文件或目录的修改,使用户可以回溯到历史版本,查看更改记录,对比不同版本之间的差异,并在必要时恢复旧版本。 2. 协作开发:通过集中式仓库,SVN使得多个开发者可以同时编辑同一份代码...

    SVN版本管理工具使用教程

    在本教程中,我们介绍了 SVN 的基本使用和操作,包括初始化检出、选择 SVN 检出、浏览服务器上的目录、上传文件、提交文件、刷新和提交修改、删除文件、查看服务器上的版本、还原操作和恢复删除本地删除等。...

    svn/tomcat本地版本出包工具

    例如,如果一个静态资源文件在某个时间点被修改,而这个修改并未被提交到SVN,工具依然能够识别并将其包括在打包文件中。 标签"svn工具"和"版本控制"明确指出了这个工具的核心功能。使用版本控制工具,如SVN,是...

    清楚svn目录下生成的.svn文件夹

    - **备份**:在清理之前,确保你有项目的备份,以防万一需要恢复到某个版本。 - **不适用于版本控制之外的场景**:如果你只是想分享代码或构建发布版本,清理`.svn`文件夹是合适的;但如果还需要继续使用SVN,那么...

    SVN 备份脚本

    SVN(Subversion)是一种广泛使用的版本控制系统,用于管理和跟踪文件和目录的变更。通过创建SVN备份脚本,我们可以确保在开发过程中对代码库进行安全保护,避免数据丢失。以下将详细介绍如何实现SVN的增量备份和...

    svn linux下命令详解

    svn add 命令用于将文件添加到版本库中。该命令的基本语法为:svn add <文件名>。例如:svn add test.php(添加 test.php 文件),svn add *.php(添加当前目录下所有的 php 文件)。 3. 将改动的文件提交到版本库 ...

    svn(subversion)版本管理工具 教程

    它将数据存储在一个中央仓库(repository)中,记录每次文件的变动,使用户能够恢复到旧版本或者浏览历史记录。SVN不仅适用于程序源代码管理,还可以用于管理任何类型的文件。相比传统的版本控制工具(如VSS)采用的...

    svn本地文件夹断开服务器连接

    在实际操作中,确保在删除.svn文件夹之前备份项目,以防万一需要恢复到某个特定版本。此外,如果团队中还有其他成员在使用svn,断开连接前应告知他们,以免造成协作混乱。 总结,"svn本地文件夹断开服务器连接"这一...

    一键删除目录下SVN记录文件

    在开发过程中,SVN用于跟踪和管理源代码更改,但有时用户可能需要从本地文件系统中完全移除与SVN相关的元数据,比如.svn隐藏文件或配置文件,这通常是当项目不再使用SVN或者切换到其他版本控制系统时的操作。...

    SVN1.6客户端汉化包

    通过版本控制,每个修改都会被记录下来,允许用户随时查看历史版本并恢复到某个特定状态。分支管理使得团队成员可以在不影响主分支的情况下独立工作,然后将他们的更改合并回去。合并功能确保多个人的工作可以安全地...

    svn版本控制工具

    - **创建分支/标签(Branch/Tag)**:复制仓库中的某个状态到新的分支或标签路径,用于长期的分支开发或保存特定版本。 - **合并(Merge)**:将分支的更改合并到主分支,通常在解决冲突后进行。 - **解决冲突**:当...

Global site tag (gtag.js) - Google Analytics