2026年GitHub必备CLI工具推荐:让终端操作效率翻倍
命令行界面(CLI)从未消亡,反而在2026年迎来了新的黄金时代。随着开发者对效率的追求不断提升,一批用Rust和Go编写的现代CLI工具正在取代传统Unix命令,成为终端工作流的新标配。本文推荐三个在GitHub上广受好评的CLI工具,它们各有侧重,组合使用能让你的终端效率产生质的飞跃。
一、gh-dash:终端里的GitHub仪表盘
项目地址:https://github.com/dlvhdr/gh-dash Star数:12,300+ 语言:Go 许可证:MIT
对于经常在GitHub上协作的开发者来说,管理Pull Request和Issue是一件繁琐的事。gh-dash作为GitHub CLI(gh)的扩展插件,在终端中提供了一个功能丰富的仪表盘界面,让你无需打开浏览器就能掌控所有PR和Issue动态。
核心功能
gh-dash采用TUI(终端用户界面)设计,基于Bubble Tea框架构建,界面流畅且可完全自定义。你可以定义多个区块(Sections),每个区块使用GitHub搜索过滤器来展示不同维度的内容——比如"分配给我的PR"、"等待审核的PR"、"我创建的Issue"等。
支持的功能包括:PR和Issue的统一搜索浏览、自定义列配置(隐藏/宽度调整)、自定义快捷键和命令、自动刷新、Markdown渲染、PR Diff查看等。
安装方式
# 前提:已安装 GitHub CLI (gh)
# macOS
gh extension install dlvhdr/gh-dash
# 或使用 Homebrew
brew install gh-dash
# 启动仪表盘
gh dash
使用示例
# 直接启动仪表盘
gh dash
# 仅查看 PR
gh dash prs
# 仅查看 Issue
gh dash issues
配置文件位于 ~/.config/gh-dash/config.yml,可以自定义区块、主题和快捷键:
prSections:
- title: "My Pull Requests"
filters: "is:open author:@me"
- title: "Review Requested"
filters: "is:open review-requested:@me"
适用场景
- 开源维护者:同时管理多个仓库的PR和Issue
- 技术负责人:跟踪团队代码审查进度
- 跨仓库协作者:在一个界面内查看所有相关PR
二、bat:带语法高亮的cat替代品
项目地址:https://github.com/sharkdp/bat Star数:31,000+ 语言:Rust 许可证:Apache-2.0
cat是每个Linux用户最早学会的命令之一,但它只能输出纯文本。bat用Rust重写了这个经典命令,为其增添了语法高亮、Git集成和行号显示,让终端文件查看体验焕然一新。
核心功能
bat支持200多种编程和标记语言的语法高亮,使用Sublime Text的语法定义引擎,着色效果精美。Git集成是bat的另一个亮点——它能在行号旁显示Git修改状态,新增行、删除行一目了然。
此外,bat还支持:自动分页(集成less)、主题自定义、管道输出时自动禁用装饰(方便脚本使用)、作为MANPAGER替代man命令的阅读体验。
安装方式
# macOS
brew install bat
# Ubuntu/Debian
apt install bat
# 注意:Ubuntu上命令名为 batcat,建议设置别名
echo 'alias cat="batcat"' >> ~/.bashrc
# Arch Linux
pacman -S bat
# Cargo(Rust包管理器)
cargo install bat
使用示例
# 查看文件(自动语法高亮)
bat main.py
# 查看指定行范围
bat --line-range 50:100 config.yml
# 作为管道工具(自动禁用装饰)
echo "print('hello')" | bat -l python
# 设置为 man 的分页器
export MANPAGER="sh -c 'col -bx | bat -l man -p'"
适用场景
- 日常文件浏览:替代cat,获得语法高亮和行号
- 代码审查:通过Git集成快速查看文件修改
- 脚本输出美化:管道中为输出添加语法高亮
- Man页面阅读:让man文档也有语法高亮
三、lazygit:终端里的Git可视化神器
项目地址:https://github.com/jesseduffield/lazygit Star数:40,000+ 语言:Go 许可证:MIT
Git命令繁多且参数复杂,即使经验丰富的开发者也难免需要查阅文档。lazygit用一个精美的TUI界面封装了Git的常用操作,让暂存、提交、分支管理、变基等操作变得直观高效。
核心功能
lazygit的可视化分支树能直观展示仓库拓扑结构,无需记忆命令即可理解分支关系。交互式暂存支持按代码块(hunk)选择,甚至可以精确到单行暂存。提交导航可以浏览历史并查看内联Diff。还支持冲突解决、Stash管理、自定义快捷键(YAML配置)、鼠标操作等。
安装方式
# macOS
brew install lazygit
# Ubuntu/Debian
# 从 Release 页面下载二进制文件
LAZYGIT_VERSION=$(curl -s "https://api.github.com/repos/jesseduffield/lazygit/releases/latest" | grep -Po '"tag_name": "v\K[^"]*')
curl -Lo lazygit.tar.gz "https://github.com/jesseduffield/lazygit/releases/latest/download/lazygit_${LAZYGIT_VERSION}_Linux_x86_64.tar.gz"
tar xf lazygit.tar.gz lazygit
sudo install lazygit /usr/local/bin
# Go 安装
go install github.com/jesseduffield/lazygit@latest
使用示例
# 在任意 Git 仓库中启动
cd your-repo
lazygit
# 常用快捷键(启动后):
# Space - 暂存/取消暂存文件
# c - 提交
# p - 推送
# P - 强制推送
# b - 分支操作
# s - Stash 操作
# / - 搜索
适用场景
- Git新手:无需记忆复杂命令即可完成所有常用操作
- 频繁提交者:交互式暂存让精确控制每次提交内容
- 分支管理者:可视化分支树让变基和合并更直观
- 冲突解决:并排对比视图让冲突解决更高效
总结
这三个工具代表了现代CLI工具的三个方向:平台集成(gh-dash连接GitHub生态)、经典增强(bat升级cat)、可视化操作(lazygit图形化Git)。它们都用Rust或Go编写,性能优异,且跨平台支持完善。将这些工具加入你的终端工具箱,日常开发效率将获得显著提升。现代CLI工具的复兴证明了一件事:终端从未过时,它只是在进化。

评论(0)
暂无评论,来抢沙发~
请 登录 后发表评论