x-cmd pkg | lazygit - Git 命令的终端图形界面

目录

简介

lazygit 是由 Jesse Duffield 使用 Go 语言开发的 git 命令终端 UI ,旨在终端界面中便捷地管理 git 存储库。

它能为 git 命令提供一个终端图形界面,用户可以通过键盘快捷键或鼠标快速地完成各种 Git 操作,如提交、合并、推送、查看或切换分支等。

快速入门

  1. 安装并启动 lazygit:

    sh 复制代码
    eval "$(curl https://get.x-cmd.com)"        # 安装 x-cmd
    x env use lazygit                           # 使用 x-cmd 安装 lazygit
    lazygit                                     # 启动 lazygit UI
  2. 配置 lazygit:

    sh 复制代码
    lazygit --config | grep "lang"                                      # 查看 lazygit 当前使用的自然语言
    lazygit -cd                                                         # 获取 lazygit 的配置文件目录
    printf "gui:\n  language: zh-CN\n" > "$(lazygit -cd)/config.yml"    # 修改 lazygit 配置文件,如将语言设置为中文
  3. 常用快捷键:

    • q:退出 lazygit 的 UI 界面;
    • esc:取消 lazygit 操作;
    • h/j:上下切换到其他功能区面板(如文件变更面板、分支管理);
    • ?:获取当前功能区面板的按键帮助;
    • ]/[:左右切换到其他选项卡;
    • p:git pull - 拉取远程仓库的代码;
    • P:git push - 将本地仓库代码推送到远程仓库;
    • <space>:(在文件变更面板)git add - 暂存选中的更改或取消暂存;
    • c:(在文件变更面板)git commit - 为暂存的更改添加提交说明并存入本地仓库。

功能特点

  1. 功能多样:涵盖了大量 git 管理功能,例如 Rebase 、Worktrees、cherry-pick、修改仓库提交记录、浏览分支关系图等,用户能以交互的方式操作相对复杂的 Git 操作。
  2. 交互友好:拥有美观的 Terminal UI 以及直观的绘图渲染,快捷键的设计非常实用方便,支持鼠标操作,支持多种自然语言。
  3. 自定义命令:提供灵活的配置文件,可在交互模式下绑定快捷键,运行自定义命令。

相关工具或竞品

  1. gitui:用 Rust 语言构建的 git 命令终端 UI,在面对大型存储库时的性能表现更好,但 UI 没有 lazygit 那么美观。
  2. tig:用 C 语言构建的 git 文本模式界面,主要功能是作为 Git 存储库浏览器,能帮助用户暂存块级别的提交更改或充当各种 Git 命令输出的分页器。
  3. bit:用 go 编写的 git 增强工具,能为你提供丰富的 git 命令补全和选项的相关建议。
  4. x git:x-cmd 为 git 提供的增强性封装命令,能为交互式环境 (Zsh, Bash等) 中的 git 命令提供补全和选项的相关建议,该建议支持英文和中文。

进一步探索

更多内容请查阅 : pkg/lazygit

转载请标明原文链接https://www.x-cmd.com/pkg/lazygit


关注微信官方公众号 : oh my x

获取开源软件和 x-cmd 最新用法

相关推荐
木子Linux15 分钟前
【Linux打怪升级记 | 问题01】安装Linux系统忘记设置时区怎么办?3个方法教你回到东八区
linux·运维·服务器·centos·云计算
mit6.82421 分钟前
Ubuntu 系统下性能剖析工具: perf
linux·运维·ubuntu
鹏大师运维22 分钟前
聊聊开源的虚拟化平台--PVE
linux·开源·虚拟化·虚拟机·pve·存储·nfs
watermelonoops29 分钟前
Windows安装Ubuntu,Deepin三系统启动问题(XXX has invalid signature 您需要先加载内核)
linux·运维·ubuntu·deepin
滴水之功1 小时前
VMware OpenWrt怎么桥接模式联网
linux·openwrt
ldinvicible2 小时前
How to run Flutter on an Embedded Device
linux
yylの博客2 小时前
Windows通过git-bash安装zsh
windows·git·bash·zsh
YRr YRr2 小时前
解决Ubuntu 20.04上编译OpenCV 3.2时遇到的stdlib.h缺失错误
linux·opencv·ubuntu
认真学习的小雅兰.2 小时前
如何在Ubuntu上利用Docker和Cpolar实现Excalidraw公网访问高效绘图——“cpolar内网穿透”
linux·ubuntu·docker
丁总学Java2 小时前
(Z Shell)zsh: no matches found: ? 使用单引号包裹
git·zsh