妙用 Intellij IDEA 創建臨時文件,Git 跟蹤不到的那種

  • 2020 年 11 月 5 日
  • 筆記

| 好看請贊,養成習慣

  • 你有一個思想,我有一個思想,我們交換後,一個人就有兩個思想

  • If you can NOT explain it simply, you do NOT understand it well enough

現陸續將Demo代碼和技術文章整理在一起 Github實踐精選 ,方便大家閱讀查看,本文同樣收錄在此,覺得不錯,還請Star


多數人對於 Intellij IDEA 可能始於其「顏值」,終於其「才華」,外加各種插件 buff 的加成,coding 的節奏分分鐘要暴走

拋開自己安裝的插件,IDEA 其實也內秀的很,在 IntelliJ IDEA HTTP Client高級使用詳解 中詳細的介紹了開發小組內放棄 Postman 的理由,用過的小夥伴後台留言直呼爽。

但今天要介紹的是另外一個秀的有些含蓄的小功能,她那麼顯眼的站在你面前,你卻選擇忽視她

有時候我們需要在項目之外創建一些臨時文件或一些實驗性代碼,創建在項目中可能一不小心 Git 誤提交,不創建項目里又需要切換到其他應用上來回拷貝,對於專註 coding 的我們來說,總顯得不夠流暢

IDEA 其實早已為我們解決了這個痛點,藉助 Scratch files 和 Scratch buffers 就可以解決

Scratch files | Scratch buffers

IDEA 會在項目平行目錄中自動生成下面的目錄結構,這就是今天主角的位置,你有正視過她們嗎?

Scratch files 和 Scratch buffers 二者還是有很大差別的:

Scratch files

Scratch files 是一種功能完整的、可運行的和可調試的文件,支持語法高亮顯示、代碼補全和相應文件類型的所有其他特性 (說白了很像Jupyter Notebooks)

Scratch file 的功能,就可以滿足我們在 Coding 中的各種想法,用於快速記錄。創建好的這個文件並不存儲在我們的項目目錄中(避免了意外 git push 的尷尬),甚至在 IDEA 中切換到其他項目中也可以看到你剛剛創建的這個文件,進一步說白一點,這是凌駕在項目之上的一個全局功能,如下圖,切換到了其他項目中,Scratch files 依舊存在

創建一個 Scratch file 很簡單,使用快捷鍵 ⇧⌘N ,支持關鍵字搜索,直接創建相應類型的文件就可以,比如這裡創建一個 java 文件

默認會創建名為 Scratch.java 的文件,並寫好 main 函數,就像這樣:

在這裡和你正常在項目中寫 java 代碼沒什麼區別,你可以使用 git status 命令來驗證,結果是 Git 完全不 track 的,放心的創建臨時文件就好了

其實我很常用的是創建一個 scratch.sql 文件,存放一些日常 SQL 語句,同樣的創建方式,搜索 sql 默認會創建一個 scratch.sql 的文件,文件創建之後要配置數據源

配置好後,就可以盡情的書寫你日常用到的 SQL 了

光標放到 SQL 位置,使用快捷鍵 ⌘⏎ ,選擇相應的 Session (會話) 就可以 run 這條 SQL 語句了

執行後,就看到你熟悉的畫面了,因為這裡的畫面就是 IDEA 默認的數據庫管理工具,這篇 IntelliJ IDEA的數據庫管理工具實在太方便了 文章中有過詳細說明

創建 Scratch files 可選擇的類型非常多,總有一個適合你的一些需要

Scratch buffers

和 Scratch files 類似,只不過 Scratch buffers 就是一個簡單的文本文件,沒有任何編碼輔助功能 (說白了,可以將它理解成一個記事本),創建 Scratch buffers 沒有直接的快捷鍵,需要用通用快捷鍵 ⇧⌘A ,並輸入關鍵字(比如 buffer):

敲擊回車鍵,就會創建好一個名為 scratch.txt 的文本文件。反覆創建 Scratch buffers,你會發現,最多只允許創建 5 個

因為這個操作不頻繁,所以也就沒有默認快捷鍵,如果你是個快捷鍵強迫症患者,那就在 KeyMap 處添加相應的快捷鍵就可以了

這裡要說明一個注意事項

如果你在 buffer1.txt 文件中記錄了一些內容,當你創建第 6 次 scratch buffer 文件時,buffer1.txt 的內容就會被清空

別看 Scratch files 和 Scratch buffers 不會被 Git 跟蹤,但是同樣可以通過鼠標右鍵查看 Local History 來查看過往所有改動

減少應用切換,盡量保持專註,可以藉助預覽模式(ctrl+opt+v) 和 快捷鍵 (cmd+e)切換最近常用文件,戴上耳機,快告訴我,時速多少邁?

總結

這是一個很小的功能,但是在日常開發中真的可以帶來很大的幫助:

  • 跨越項目的訪問
  • 不被 Git 所跟蹤,防止誤提交
  • 可以臨時測試各種語言的代碼

最後配合預覽模式的使用,減少應用之間的切換,一切顯得都很流暢

當然,保持 Code Clean,減少猜測和回憶時間,我們最好給我們創建的 Scratch files 和 Scratch buffers 更友好的文件名稱

個人博客://dayarch.top
加我微信好友, 進群娛樂學習交流,備註「進群」

歡迎持續關注公眾號:「日拱一兵」

  • 前沿 Java 技術乾貨分享
  • 高效工具匯總 | 回復「工具」
  • 面試問題分析與解答
  • 技術資料領取 | 回復「資料」

以讀偵探小說思維輕鬆趣味學習 Java 技術棧相關知識,本着將複雜問題簡單化,抽象問題具體化和圖形化原則逐步分解技術問題,技術持續更新,請持續關注……