[ Tools ] - GitKraken Command Palette 簡介

Git 是現代主流的版本控制系統,

GitKraken 是一套為了 Git 打造而生的 GUI 工具。

除了整合了許多第三方平台以外,也提供了相當華麗及便利的操作體驗。

我在先前的文章中曾介紹過 GitKraken x Azure DevOps 的整合方式,

而本次要分享的是另一個讓我愛不釋手的功能 — Command Palette

前言

Command Palette 的地位相當於各家 IDE 提供的 Search Everywhere ,

它可以讓你透過簡單幾個按鍵就能完成想要操作的事情。

如果你本身的習慣是能用鍵盤就不用滑鼠那種,我想你應該會愛上它!

雖說現在許多的開發工具都有提供內建的 Git 功能,

但我個人還是習慣將版控的部分獨立出來操作,

尤其在需要同時於多個專案中進行切換的情境特別好用。

Command Palette v.s. Fuzzy Finder

這邊簡單提一下各版本之間的差異,

這個功能在 v8.0.0 之前的版本叫做 Fuzzy Finder

你可能會在許多先前的部落格文章中看到這個名詞,

不過在 v8.0.0 之後官方更名為 Command Palette

不過這兩個其實是一樣的東西,功能上並沒有什麼差異,

唯一的差別是 v8.0.0 之後右上角多了一個點選的按鈕,

讓你可以透過滑鼠叫出 Command Palette 的功能。

使用方式 & 常用功能介紹

要叫出 Command Palette 的方式有兩種,

第一種方式上面有提到,直接透過滑鼠從右上角點選,不過這個方式我比較不常用;

第二種則是直接按 Ctrl + P

上面介紹的是 Windows 的熱鍵,如果是使用 Mac 的朋友請改用⌘ + P

使用之後會在中間彈出一個小視窗,

讓我們可以透過 Typing 的方式直接指定要執行的動作。

下圖先附上官方製作的動畫讓大家體驗一下。

一個動作可以被分成兩個部分:指令 ( Command ) 及參數 ( Argument ),

有些指令是不需要輸入參數的 ( 例如:Pull )。

打完指令之後,可以按 EnterTab跳到下一個動作。

以下介紹幾個我比較常用到的指令。

Open Repo

當你需要同時在多專案之間打游擊的時候,這個指令無疑是一大利器!

只要是曾經用 GitKraken 開啟過的 Repo,都可以被搜尋到。

即使是跨不同的來源 ( GitHub, Azure DevOps… ) 也是沒問題的。

在搜尋時可以善用 repo 名稱的大寫進行篩選,例如 MyProject 就是 Open RepoMP

Pull

在團隊協作上,為了及時同步分支上的 commit ,Pull 也是很常使用到的功能。

而 GitKraken 又針對分支狀態同步這件事情做了細緻的調整。

它會在背景跑排程幫你更新當下那個 repo 的 remote 分支(實際上應該是執行 git fetch -p的指令),

所以你的 remote 分支會自動保持在最新狀態。

這有一個很大的好處,如果你的團隊走的是 PR / MR 合併後就把原分支從 remote 刪掉的,

那你可以不用特別去清理那些已經不存在的 remote 分支。

而當 GitKraken 發現你的 local 分支的 commit 落後時,

他就會在 local 分支跳出一個 告訴你落後幾個 commit 了。

這時我們就可以使用 Pull 來同步分支上的 commit(圖中有一個電腦 icon 是 local 分支。)

Push

再來這個指令就不多說啦,

大家要上扣一定都得用到的。

Gitkraken 一樣會很貼心地在分支旁邊用 標上你這次要推幾個 commit 上去。

一樣來看一下 Push 的流程。

Checkout

接著是切換分支,我自己比較常會用到的時機有兩個,

一個是要開始做功能前,要從主分支切到 feature 分支;

另一個則是功能做完也 PR 完後,要從 feature 分支切回主分支時(廢話)。

這邊我在 remote branch 上建立了一個 add-shopping-cart的 feature 分支作為示範。

Blame

最後要介紹的這個也是很常用到的指令,

尤其是在抓戰犯追問題的時候特別會需要用到。

在下圖中我們來 Blame 一下 ExcelReader這個檔案作為示範。

結語

除了上面提到的幾個指令之外,GitKraken 其實還有支援許多好用的指令。

這邊就不一一介紹,大家可以參考官方的 Command Palette 說明。

希望以上簡短的介紹,可以讓更多人來使用這套軟體。

雖然在商用上版本是需要付費的,但是價格其實還蠻平易近人的。

GitKraken 有提供 7 天的免費試用期,有興趣的朋友不妨體驗看看。

 

以上內容如有勘誤,再麻煩告知指正!

參考

https://support.gitkraken.com/start-here/command-palette/