go local history本地历史恢复代码神器
作者:golang学习记
local history
今天来介绍一个goland很逆天的功能:local history,也就是本地历史。
这个功能不常被人提及,但是他就像是山中的隐士一样,不出手则已,一出手就是王炸。
这个功能是用来记录项目里面的历史改变的,这个改变包含一般意义的改变,比如说你对某个文件做了一些改动,也包含你之前删除的文件。
既然是本地历史,那么我们就可以回到历史的某个时间点的状态。人们常说人生无法时光倒流,也没有后悔药去修正自己犯过的错误。但是对于代码就不一样了。我们有机会让代码回过去的某个状态。
听起来,本地历史很像git的回退功能。但是他们起作用的时间点是不一样的,git是对已经提交的代码进行回退到某个过去的版本;本地历史则是在你编辑代码的全过程进行项目的状态记录,从这个意义上讲,他比git更强大。
实操本地历史的使用
假定这么一个场景,前几天你已经提交了一次代码,然后开始对一个文件进行了一些更改(比如有25次的更改),但是在你提交代码之前,你突然意识到 这个文件有一个重要的方法目前是没有(这个方法在第三次更改的时候加的,后面又删了),你需要让这个文件重新具有这个方法的代码。
你想过使用撤销(快捷键 ctrl+z)来试图回退让这个方法重新具有,但是一想到要按很多次ctrl+z,也害怕多次的ctrl+z会出问题。
此时,你就可以用到本地历史了。
第一个:回退单个文件
对这个文件右击,然后选择Local history,然后选择Show history,然后回弹出一个窗口,窗口左边就是之前的这个文件出现的版本的列表,每个版本默认带了一个自己的时间戳。窗口右边是一个差异的查看器,选择一个历史版本,然后和当前的版本进行差异对比,以此来确定自己需要哪个历史版本的文件。
当选定了一个历史版本,就可以点击向左的箭头符号,实现回退。
前面选中某个版本,然后回退,那么代码就是这个版本的代码;如果你只想要这个历史版本的某一部分代码,那么可以点击>>去把想要的代码移到当前的版本里。
第二个:回退多个文件
先选中多个文件,然后向前面右击选择Local hisotry|show history。
第三个:回退已经删除的文件
如果你之前不小心删除了某个文件,也可以同上一样操作,删除的文件在历史版本里面标记了Deleting。
如下动图,来恢复已经删除的server.go
前面提到每个文件的历史版本是通过时间戳来标识的,那么如果在操作多个文件,或者对同一个文件前面的更改次数太多了,可能就不那么好识别具体的版本了。此时可以给当前文件的版本加一个Label来区别。
还是右击文件,选择Local history,然后选择put label,然后给一个当前更改的标识(最好是一个有业务含义的名字)。
为了减少鼠标的点击,可以先按2次 shift,然后输入local ,选择local history来快速调出本地历史
本地历史很强大,可以帮我们很快恢复一些代码。但是他也是有使用边界的。本地历史默认只能保存最近5天有修改的文件。这个值也是可以修改的,在Setting里面的IDE下面找到Duration of storing changes in Local History ,然后你可以给个30天(应该够了)。
以上就是go local history本地历史恢复代码神器的详细内容,更多关于go local history恢复代码的资料请关注脚本之家其它相关文章!