用 Rust 編寫的 Git 極速終端 UI
GitUI
是一個用 Rust 編寫的用於 git 的終端 UI,我們的目標是在不離開你心愛的命令行終端窗口的情況下,以快速、只需鍵盤和跨平臺的方式簡化常見的 git 任務。
我的大部分 git 工作都是在終端進行的,但我也經常發現自己在一些場景下會使用 git GUI,比如:index、commit、diff、stash、blame 和日誌等操作。
不過一些流行的 git GUI 應用在大型倉庫中就會出現各種問題,爲解決這些問題,最終我決定用 Rust 開發了 GitUI
。
GitUI
具有如下一些特性:
-
快速和直觀的鍵盤控制
-
基於上下文的幫助(不需要記住大量的快捷鍵)
-
檢查、提交和修改變化(包括 hooks:commit-msg/post-commit)
-
暫存、取消暫存、恢復和重置文件、代碼行
-
存儲(保存、Pop、應用、刪除和檢查)
-
Push/Fetch / 從遠程
-
分支列表(創建、重命名、刪除、checkout、遠程)
-
瀏覽提交日誌,對已提交的修改進行比較
-
可擴展的終端佈局
-
用於控制流的異步 git API
解析整個 Linux 的 git 倉庫(包含超過 90 萬個提交)比較了 lazygit、tig 和 gitui 的性能,得到了如下所示的結果:
不過目前而言,這個產品還處於 alpha 階段。當然對於個人用戶來說,它是相當穩定的,而且我在開發 GitUI
本身的時候也在用他自己。要安裝的話是非常簡單的。
Homebrew (macOS)
brew install gitui
Scoop (Windows)
scoop install gitui
Chocolatey (Windows)
choco install gitui
也可以直接在 Releases 頁面下載二進制文件進行安裝:https://github.com/extrawurst/gitui/releases
此外我們也可以自己使用源碼進行構建,需要最新的 rust 和 cargo,並且安裝配置好,開始使用 gitui 的最簡單方法就是讓 cargo 構建並使用 cargo install gitui
來安裝它。
gitui
還可以自動在淺色和深色終端主題上工作。當然你也可以根據自己的喜好進行定製。可以查看主題介紹:https://github.com/extrawurst/gitui/blob/master/THEMES.md
倉庫地址:https://github.com/extrawurst/gitui
本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源:https://mp.weixin.qq.com/s/x6CB_y1YOvmKD91Bt8TqqQ