进阶 - 撤销误提交的内容

  • 作者:KK

  • 发表日期:2015.12.27


复原此版本作出的修改

人生总会有失手,我们总会有时候不小心把不该提交的文件给提交上去了的。

如果只有一两个文件还好,而且变更还不多,你很记得,于是手动临时删除代码,再提交上去,这样仓库的代码又没有了你误提交的代码了,可是代码一多一复杂时,你可是搞不过来而且特别是有时候根本就涉及很多个文件。

这时候又要调出日志列表了,对你刚才提交的版本右键选择复原此版本作出的修改

效果就是:假设你当时提交涉及1个文件,3个代码变更,全部会被撤回来;多个文件都是这样,自己试下。

但必须注意的是,这个只是你本地撤销而已,仓库还没有被撤销,其他开发人员更新时不会复原,怎么办?你注意一下,被撤销内容的文件出现了叹号.

其实是SVN根据那些日志帮你做了删除工作,你的文件其实还是最新版本的(已经误提交了代码的版本),然后SVN基于最新版将相关代码删除,于是文件就发生了变更,有叹号,于是如果你想将这个撤回了失误内容的文件发送到他人手中,就要再次提交一下了.


复原到此版本

这个菜单有点不一样,它的字面意思倒是很明显,上面截图中我最新的是版本14,如果我对版本12选择这个菜单,则会将版本12到最新的版本14的所有变化都全部还原,而不仅仅是还原版本12到13的变化一样,SVN就是这么想的:想当年版本12长什么模样,我就给你变回那个模样!

但还是你本地还原而已,要手动提交这些变更才能让同伙们一起变化哦!(这种操作我们一般称为回滚)