用 Rust 编写的 Git 极速终端 UI

开发 开发工具
我的大部分 git 工作都是在终端进行的,但我也经常发现自己在一些场景下会使用 git GUI,比如:index、commit、diff、stash、blame 和日志等操作。

[[403394]]

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)

  1. brew install gitui 

Scoop (Windows)

  1. scoop install gitui 

Chocolatey (Windows)

  1. 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

 

责任编辑:姜华 来源: Github爱好者
相关推荐

2021-10-28 18:02:21

RustGitLinux

2023-06-19 14:14:24

Rust程序Web

2021-10-26 21:30:11

GitUIRustGit

2021-05-12 09:20:11

Window-rsRustwindows

2021-05-18 13:05:31

LinuxRust复用器

2022-02-07 16:40:12

RustGNU Coreut命令

2023-06-23 14:15:09

Rust编程

2014-04-11 11:36:42

NDKAndroid开发终端

2021-05-31 11:45:37

LinuxRustShell

2022-02-07 08:00:00

Python框架应用程序

2022-03-10 17:02:51

Rust单链表数据结构

2017-04-12 11:16:08

Python终端编程

2024-01-08 13:31:00

Rust自动化测试

2022-01-27 15:37:34

Asciinema终端会话记录器开源

2011-05-06 09:49:22

视觉设计移动终端UI设计

2023-09-21 11:39:29

RustJetBrainsIDE

2021-01-03 16:30:34

Rust编程语言

2015-08-19 09:29:35

Git协议编写

2015-08-06 15:24:43

iosIOSUI优化

2022-06-19 14:13:29

tmateLinux
点赞
收藏

51CTO技术栈公众号