3 min read

終端工具

終端工具

主因是因為現在都透過 Claude code 協助開發,原本都是透過 IDE (ex: cursor, vs code...等),但後來都只拿來看代碼跟提交 Git ,所以就去找了些工具。

將分為三個工具


GHOSTTY

終端機推薦 ghostty,是HashiCorp 創辦人所開發的終端機,內建GPU 加速渲染,也可以透過設定檔將配置一鍵帶著到處走。

可以選左上角 > Settings 去放入以下配置

# ── 主題 ──
theme = Catppuccin Mocha

# ── 快捷鍵 ──
keybind = cmd+r=prompt_tab_title

以下快捷不分大小寫

Tab 管理

快捷鍵 功能
Cmd+T 新增 tab
Cmd+W 關閉 tab
Cmd+R 重命名 tab(自訂)
Cmd+1~8 切到第 N 個 tab
Ctrl+Tab 下一個 tab
Ctrl+Shift+Tab 上一個 tab

分割畫面(Split)

快捷鍵 功能
Cmd+D 水平分割
Cmd+Shift+D 垂直分割
Cmd+[ / Cmd+] 切換分割面板
Cmd+Shift+Enter 切換分割面板全螢幕

一般操作

快捷鍵 功能
Cmd+Shift+P Command Palette
Cmd+N 新視窗
Cmd+, 開啟設定檔
Cmd++ / Cmd+- 放大/縮小字體
Cmd+0 重設字體大小
Cmd+K 清除畫面
Cmd+Shift+, 重新載入設定

yazi 終端檔案管理器

安裝方式 brew install yzi

# vi ~/.config/yazi/keymap.toml

[mgr]
prepend_keymap = [
	{ on = "T", run = 'shell --orphan -- open -a Ghostty %h', desc = "Open Ghostty in hovered directory" },
]

在終端中可以直接透過 ghostty 直接開啟

Lazygit 終端管理git

安裝方式 brew install lazygit

面板導航

快捷鍵 說明
Tab / 1-5 切換面板(Status / Files / Branches / Commits / Stash)
h / l 左右切換子面板
j / k 上下移動
Enter 展開 / 進入詳細
? 顯示當前面板所有快捷鍵
q 退出(或返回上一層)
x 開啟選單(顯示可用操作)

Files 面板(檔案操作)

快捷鍵 說明
Space Stage / Unstage 單一檔案
a Stage / Unstage 全部檔案
Enter 進入檔案查看逐行 diff
d 丟棄檔案變更(discard changes)
e 用編輯器打開檔案
c Commit(輸入訊息後 Enter 確認)
A Amend 上一次 commit
S Stash 所有變更
i 加入 .gitignore

逐行 Stage(進入檔案 diff 後)

快捷鍵 說明
Space Stage / Unstage 選中的行
v 切換為範圍選取模式
a Stage / Unstage 整個 hunk
Esc 返回檔案列表

Branches 面板

快捷鍵 說明
Space Checkout 分支
n 新建分支
d 刪除分支
r Rebase 當前分支到選中分支
M Merge 選中分支到當前分支
f Fast-forward 當前分支
c Checkout by name(輸入分支名)

Remote 操作

快捷鍵 說明
p Pull
P Push
f Fetch
u 設定 upstream(在 branches 面板)

Cherry-pick 工作流

  1. 在 Commits 面板選中目標 commit
  2. shift+c 複製 commit
  3. 切換到目標分支
  4. shift+v 貼上(cherry-pick)

衝突解決

進入有衝突的檔案後:

快捷鍵 說明
Enter 進入衝突檔案
h / l 選擇保留左邊(ours)或右邊(theirs)
b 保留兩邊(both)
Space 確認選擇