場景:開源社區提交代碼每一個人每個MR只有兩個commits,一個是merge前的,一個是merge時候的。由於他們不過是把本身在同一個PR上面提交的commits所有壓縮成了一個而已。這個在git上面叫squash,一般他們用的是rebase。html
另一種方法一樣能夠壓縮commits,並且比squash更安全,比rebase更簡單。git
代碼編輯
- 代碼跳轉: Ctrl + 左鍵 或者 Ctrl + B,能夠跳轉到函數或者變量的聲明位置
- 調用位置: Alt + F7,查找調用者
- 自動補全: 最好是修改一下響應時間,Settings->Editors->General->Code Completing: Autopopup in 0.
- 打開文件: Ctrl + Shift + N
- 打開類: Ctrl + N
- 打開函數: Ctrl + F12
- 「超級」打開: 雙擊 shift,能夠 search anywhere.
- 複製整行: Ctrl + D
- 刪除整行: Ctrl + Y
- 摺疊當前塊: Ctrl + 「-」,摺疊當前塊以及子塊: Ctrl + Alt + 「-」,摺疊所有塊: Ctrl + Shift + 「-」
- 展開, 把摺疊的快捷鍵換成」+」
- 選擇: Ctrl + W,會從小到大逐漸擴大。好比按一次,選中word,按兩次,選擇表達式, 三次, 整個函數
重構
- 更名: Shift + F6,修改函數名,變量名,文件名,同時修改全部引用的位置.
- 移動文件: F6, 並修改文件的引用位置, 包括 html 和 js文件
- 抽取函數: Ctrl + Alt + M,整塊代碼抽取成函數
- 抽取變量: Ctrl + Alt + V,當前選中抽取爲變量
- 移動整塊代碼: Ctrl + Shift + ↑↓
- 包裹: Ctrl + Alt + T,外層包裹,好比 if、try catch等