svn如何回滚到之前版本

第一种情况:改动没有被提交(commit)。

这种情况下,使用svn revert就能取消之前的修改。

svn revert用法如下:

# svn revert [-R] something

其中something可以是(目录或文件的)相对路径也可以是绝对路径。

当something为单个文件时,直接svn revert something就行了;当something为目录时,需要加上参数-R(Recursive,递归),否则只会将something这个目录的改动。

在这种情况下也可以使用svn update命令来取消对之前的修改,但不建议使用。因为svn update会去连接仓库服务器,耗费时间。

注意:svn revert本身有固有的危险,因为它的目的是放弃未提交的修改。一旦你选择了恢复,Subversion没有方法找回未提交的修改。

第二种情况:改动已经被提交(commit)。

这种情况下,用svn merge命令来进行回滚。

回滚的操作过程如下:

1、保证我们拿到的是最新代码:

svn update

假设最新版本号是28。

2、然后找出要回滚的确切版本号:

svn log [something]

假设根据svn log日志查出要回滚的版本号是25,此处的something可以是文件、目录或整个项目

如果想要更详细的了解情况,可以使用svn diff -r 28:25 [something]

3、回滚到版本号25:

svn merge -r 28:25 something

为了保险起见,再次确认回滚的结果:

svn diff [something]

发现正确无误,提交。

4、提交回滚:

svn commit -m "Revert revision from r28 to r25,because of ..."

提交后版本变成了29。

将以上操作总结为三条如下:

1. svn update,svn log,找到最新版本(latest revision)

2. 找到自己想要回滚的版本号(rollbak revision)

3. 用svn merge来回滚: svn merge -r : something

时间: 2024-08-15 00:24:06

svn如何回滚到之前版本的相关文章

SVN如何回滚到指定版本

以下内容网上收集整理. 方法一. 利用Export,这样你可以不丢失你新建的文件.打开你想要回滚的文件夹(受SVN版本控制).右键Tortoise SVN,然后在列表中选择 show log, 在看到的log列表中选择你想要回滚后的版本,然后点击右键选择Export即可. 方法二. 如果你只是修改了很多文件,并没有commit到SVN,想放弃修改,更新为仓库中最新版本.可右键Tortoise SVN,然后从列表选择 revert. 方法三. 右键Tortoise SVN,然后选择Update t

Windows下SVN回滚到旧版本(TortoiseSVN)

Windows下SVN回滚到旧版本(TortoiseSVN) 当发现新提交的代码有问题,然后想将某个旧的版本作为最新的版本时,可以使用回滚, 操作步骤如下: 1. 签出(CheckOut)最新版本的代码到电脑中(不能做任何修改) 2. 执行TortoiseSVN的Show log操作, 在新签出的文件夹上右键,TortoiseSVN -> Show log, 如下图: 3. 回滚,这里有2种类型的回滚 3.1. 直接回滚到某个旧的版本,这个版本后的变更都会被删除, 操作如下:选中某个旧的版本,执

git回滚到某个版本操作

git回滚到某个版本操作: 1.git log //查看指过去的版本 2.     git reset --hard 复制上面commit后的字符串到此处 如果只想 回滚单机的,那么到上面就结束,如果要回滚远程仓库,那么: 3.  git push -f origin master    //强制提交

git 回滚到任意版本

git回滚到任意版本 1.先显示提交的log $ git log -3 commit 4dc08bb8996a6ee02f Author: Mark <[email protected]> Date: Wed Sep 7 08:08:53 2016 +0800 xxxxx commit 9cac9ba76574da2167 Author: xxx<[email protected]> Date: Tue Sep 6 22:18:59 2016 +0800 improved the

K8S的名称空间创建&amp;&amp;版本的升级、回滚操作(回滚到指定版本)

创建一个私有仓库. #运行一个registry容器 [[email protected] ~]# docker run -tid --name registry -p 5000:5000 --restart always registry:latest #在所有需要使用私有仓库的的节点上进行以下配置: [[email protected] ~]# vim /usr/lib/systemd/system/docker.service ExecStart=/usr/bin/dockerd -H un

git 回滚到某个版本

首先使用git log 显示最近的代码提交记录 commit后面的内容,就是回滚的记录名 增加了加载条显示,提高用户体验 commit 47f45668e72e4deeccae85e9767c250d0bb31560 Merge: c042ad0 a2a2ffd Date: Thu May 30 20:30:22 2019 +0800 新闻中心的转移完毕 commit c042ad0bfacec4a462718852b6c8046d285c27d3 Date: Thu May 30 19:42:

Git服务器回滚到固定版本

方式一 1.先查看要返回的远程服务器的版本: https://git-scm.com/book/zh/v1/Git-%E5%9F%BA%E7%A1%80-%E6%9F%A5%E7%9C%8B%E6%8F%90%E4%BA%A4%E5%8E%86%E5%8F%B2 这里用最后一个gitk命令图形查看最方便 2.执行git语句git revert Sha1(对应的版本的sha1) http://yijiebuyi.com/blog/8f985d539566d0bf3b804df6be4e0c90.h

通过svn回滚指定版本

右击文件(也可以是文件夹),TortoiseSVN – show log,右击你想要回滚到的版本. “Revert to this revision”,这个比较好理解,也比较常用.就是把文件恢复到某个版本,然后commit,文件就回滚成功了.回滚成功后,所有的历史还存在.例如回滚到版本4,commit之后,会出现新的版本6,但是他的内容和版本4是一样的 原文地址:https://www.cnblogs.com/ynyhl/p/12169796.html

Git回滚远程版本

摘要: 原创出处:www.bysocket.com 泥瓦匠BYSocket 希望转载,保留摘要,谢谢! “房子是租的 但生活不是” 1.故事的开始 远程master分支下代码被不小心提交了很多垃圾代码或项目删掉,想要回滚到以前的某一版本并删除commit log.怎么办?情景如图: 情景很简单.老板上传了个文件,我把他删掉了.有一种办法,把文件再push下,但是也不想他看到图中那comment(ps:这样我才不会被fire).实现上面场景的代码如下: vim A.txt git add . gi