前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >用 Rust 编写的 Git 极速终端 UI

用 Rust 编写的 Git 极速终端 UI

作者头像
我是阳明
发布2021-06-25 17:03:28
1.2K0
发布2021-06-25 17:03:28
举报
文章被收录于专栏:k8s技术圈k8s技术圈

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

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2021-06-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 k8s技术圈 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档