svn版本回滚 —— svn使用笔记之三
svn版本回滚有两种形式:改动但未提交,改动且已提交。这里简单记录一下用法
准备工作
命令行工具先装起来,没装看这一篇:点我打开
使用命令
改动但未提交
svn revert [-R] sth // sth是文件夹或文件,-R表示递归
改动且已提交
svn update // 确保是最新代码
svn log [something] // 找到要回滚的版本号
svn merge -r 20200102:20200101 something // 版本号[20200102]回滚到[20200101]
svn diff [something] // 查看是否回滚成功(比较改动的文件)
svn commit -m "版本从02回滚到到01" // 提交回滚后且修改的本地代码,产生版本[20200103]
使用工具
这里就简单介绍一下小乌龟用法:
改动但未提交
选中项目,鼠标右键选择[Revert],然后勾选要回滚的文件即可
改动且已提交
假设当前分支本是[20200102],要回滚到[20200101]:
1 进入 show log,选择版本[20200101],右键点击 [revert to this version](使用中文版点击[复原到此版本])
2 必须注意,此时远程仓库该分支的版本已经从版本[20200102]回滚到[20200101]了
3 右键选择更新,此时本地代码也会更新到刚刚回退的版本[20200101]
4 本地修改文件后提交,将基于当前内容产生新版本[20200103]
特别注意
1 不建议一上来就在生产环境用,先在测试环境测试一哈,稳一手记得自己再验证一下
2 有其他更好的解决办法不建议使用版本回滚,这实在是最后迫不得已才再这么做的...