go local history本地歷史恢復代碼神器
local history
今天來介紹一個goland很逆天的功能:local history,也就是本地歷史。
這個功能不常被人提及,但是他就像是山中的隱士一樣,不出手則已,一出手就是王炸。
這個功能是用來記錄項目里面的歷史改變的,這個改變包含一般意義的改變,比如說你對某個文件做了一些改動,也包含你之前刪除的文件。
既然是本地歷史,那么我們就可以回到歷史的某個時間點的狀態(tài)。人們常說人生無法時光倒流,也沒有后悔藥去修正自己犯過的錯誤。但是對于代碼就不一樣了。我們有機會讓代碼回過去的某個狀態(tài)。
聽起來,本地歷史很像git的回退功能。但是他們起作用的時間點是不一樣的,git是對已經提交的代碼進行回退到某個過去的版本;本地歷史則是在你編輯代碼的全過程進行項目的狀態(tài)記錄,從這個意義上講,他比git更強大。
實操本地歷史的使用
假定這么一個場景,前幾天你已經提交了一次代碼,然后開始對一個文件進行了一些更改(比如有25次的更改),但是在你提交代碼之前,你突然意識到 這個文件有一個重要的方法目前是沒有(這個方法在第三次更改的時候加的,后面又刪了),你需要讓這個文件重新具有這個方法的代碼。
你想過使用撤銷(快捷鍵 ctrl+z)來試圖回退讓這個方法重新具有,但是一想到要按很多次ctrl+z,也害怕多次的ctrl+z會出問題。
此時,你就可以用到本地歷史了。
第一個:回退單個文件
對這個文件右擊,然后選擇Local history,然后選擇Show history,然后回彈出一個窗口,窗口左邊就是之前的這個文件出現(xiàn)的版本的列表,每個版本默認帶了一個自己的時間戳。窗口右邊是一個差異的查看器,選擇一個歷史版本,然后和當前的版本進行差異對比,以此來確定自己需要哪個歷史版本的文件。
當選定了一個歷史版本,就可以點擊向左的箭頭符號,實現(xiàn)回退。
前面選中某個版本,然后回退,那么代碼就是這個版本的代碼;如果你只想要這個歷史版本的某一部分代碼,那么可以點擊>>去把想要的代碼移到當前的版本里。
第二個:回退多個文件
先選中多個文件,然后向前面右擊選擇Local hisotry|show history。
第三個:回退已經刪除的文件
如果你之前不小心刪除了某個文件,也可以同上一樣操作,刪除的文件在歷史版本里面標記了Deleting。
如下動圖,來恢復已經刪除的server.go
前面提到每個文件的歷史版本是通過時間戳來標識的,那么如果在操作多個文件,或者對同一個文件前面的更改次數(shù)太多了,可能就不那么好識別具體的版本了。此時可以給當前文件的版本加一個Label來區(qū)別。
還是右擊文件,選擇Local history,然后選擇put label,然后給一個當前更改的標識(最好是一個有業(yè)務含義的名字)。
為了減少鼠標的點擊,可以先按2次 shift,然后輸入local ,選擇local history來快速調出本地歷史
本地歷史很強大,可以幫我們很快恢復一些代碼。但是他也是有使用邊界的。本地歷史默認只能保存最近5天有修改的文件。這個值也是可以修改的,在Setting里面的IDE下面找到Duration of storing changes in Local History ,然后你可以給個30天(應該夠了)。
以上就是go local history本地歷史恢復代碼神器的詳細內容,更多關于go local history恢復代碼的資料請關注腳本之家其它相關文章!
相關文章
Go語言實現(xiàn)基于websocket瀏覽器通知功能
這篇文章主要介紹了Go語言實現(xiàn)基于websocket瀏覽器通知功能,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-07