作者 | Eason

来源 | 程序员巴士

Git的强大是所有开发者都心知肚明的事情,但是其多样的命令令人很是难受。不过在Github上有着这么一个开源项目lazygit[1]。

Lazygit是由Jesseduffield开发并维护的项目,其代码托管在Github。通过使用Lazygit,我们可以更加便捷的去控制和维护项目。

值得一提的是,Lazygit被加入了最基本的鼠标控制支持。如果你想要了解更多有关Lazygit的特性,请访问https://youtu.be/CPLdltN7wgE[2]。

如何安装?

Lazygit给出了多种安装方式和平台支持,你可以使用如下命令去尝试安装该应用程序。

Homebrew

通常可以在 Homebrew 核心中找到lazygit 安装包,但还是建议按照指令以获取经常更新的安装包,指令也适用于 Linux。

Tap:

brew install jesseduffield/lazygit/lazygit

Core:

brew install lazygit

Ubuntu

已弃用:将不再接收更新。

Packages for Ubuntu are available via Launchpad PPA[3]。

sudo add-apt-repository ppa:lazygit-team/release

sudo apt-get update

sudo apt-get install lazygit

Scoop (Windows)

可以通过使用 scoop [4]安装lazygit:

scoop bucket add extras

scoop install lazygit

Fedora and CentOS 7

Fedora 和 CentOS 7 的软件包可通过Copr[5](Cool Other Package Repo)获得。

sudo dnf copr enable atim/lazygit -y

sudo dnf install lazygit

Go

go install github.com/jesseduffield/lazygit@latest

Lazygit的基本操作

在安装完成后,你可以在某个本地的Git仓库中使用lazygit命令来打开Lazygit控制台:

$ lazygit

如果你认为这条命令有点麻烦,你可以添加alias别名echo "alias lg='lazygit'" >> ~/.zshrc,后面的文件取决于你所使用中的终端。

快捷键绑定

可以在此处[6]查看键绑定列表。

在打开Lazygit之后我们很容易就能看到最下方的帮助信息。

  • 使用PgUp键向上滚动

  • 使用PgDn键向下滚动

  • 使用x键打开菜单

  • 使用↑↓←→键来控制光标

并且我们可以使用鼠标来控制界面焦点。

添加到暂存区

将焦点转移到Files区,在需要的文件点击即可添加到暂存区。如果需要从缓存区移除这个文件,只需要再次点击即可。

文件Commit

同样是将焦点转移到Files区,将需要进行Commit操作的文件添加到暂存区(文件名变绿),按x键进入菜单,选中自己所需要的Commit方式,回车输入Commit内容即可。

项目Push

在将需要进行Push操作的文件添加到暂存区后按x打开菜单,选中Push,输入对应信息即可。

项目Pull

打开菜单选中Pull即可进行远程仓库拉取操作。

退出时更改目录

如果要在lazygit 中更改repos 并希望 shell 在退出lazygit 时将目录更改为该repo,需要将其添加到~/.zshrc(或其他rc 文件)中:

lg()
{export LAZYGIT_NEW_DIR_FILE=~/.lazygit/newdirlazygit "$@"if [ -f $LAZYGIT_NEW_DIR_FILE ]; thencd "$(cat $LAZYGIT_NEW_DIR_FILE)"rm -f $LAZYGIT_NEW_DIR_FILE > /dev/nullfi
}

然后source ~/.zshrc从现在开始,当调用lg并退出时,将切换目录到所在lazigt 中的任何内容。要覆盖此行为,通过使用 usingshift+Q可以退出目录.

撤销重做

查看文档[7]

配置

查看配置文档[8]

自定义命令

如果lazygit 缺少某个功能,可以使用自定义命令实现

查看文档[9]

Resolving merge conflicts

Interactive Rebasing

本地调试

lazygit --debug在一个终端选项卡和另一个终端选项卡中运行以lazygit --logs并排查看程序及其日志输出

参考资料

[1]lazygit: https://github.com/jesseduffield/lazygit
[2]https://youtu.be/CPLdltN7wgE: https://github.com/jesseduffield/lazygit
[3]Launchpad PPA:

https://launchpad.net/~lazygit-team

[4]scoop :

https://scoop.sh/

[5]Copr:

https://copr.fedorainfracloud.org/coprs/atim/lazygit/

[6]此处:

https://github.com/jesseduffield/lazygit/tree/master/docs/keybindings

[7]文档:

https://github.com/jesseduffield/lazygit/blob/master/docs/Undoing.md

[8]文档:

https://github.com/jesseduffield/lazygit/blob/master/docs/Custom_Pagers.md

[9]文档:

https://github.com/jesseduffield/lazygit/blob/master/docs/Custom_Command_Keybindings.md

往期推荐

CSS 状态管理,玩出花样了!

k8s集群居然可以图形化安装了?

使用这个库,让你的服务操作 Redis 速度飞起

将 k8s 制作成 3D 射击游戏,好玩到停不下来

点分享

点收藏

点点赞

点在看

不记得 Git 命令? 懒人版 Git 值得拥有!相关推荐

  1. VirtualBox中安装懒人版macOS Mojave黑苹果系统

    前言 有时,很想体验或安装一个黑苹果操作系统.但往往手头没有兼容性良好的黑苹果操作系统硬件设备.那么一般情况下,可以采用在Windows或Linux操作系统之上安装虚拟机软件(VMware Works ...

  2. VMware Workstation Pro 12.5.7虚拟机安装 MAC OS X El Capitan 10.11.1 (15B42).cdr懒人版

    工具: VMware Workstation Pro 12.5.7 MAC OS X El Capitan 10.11.1 (15B42).cdr懒人版 beamoff Fix Yosemite VM ...

  3. win8下安装mac10.8.4懒人版双系统教程

    花了一天时间,终于成功进入mac,总结下安装心得:[本教程是参照网上教程再根据自己实际成果修改的] 在教程开始前,首先声明以下机油不适合安装黑苹果: 1,AMD的处理器 [内核原生不支持],如果非要安 ...

  4. 台式WIN7和os x yosemite 10.10.1懒人版双系统安装教程

    文章前言 作为一个OS X系统的爱好者,安装系统应该是如家常便饭一样了,这里只简单的介绍一下如何在Windows下安装OS X懒人版,让台式机双系统. 因为硬件配置大不相同,所以可能文章中出现跟你安装 ...

  5. 懒人版小学生1-6年级计算题练习(口算练习)可直接电脑上答题或者打印题目

    [懒人版]小学生1-6年级计算题练习 欢迎使用 软件编程语言 软件功能 软件操作流程 下载地址 软件使用到的工具 欢迎使用 网上众多小学生计算题练习(小学生口算练习)软件使用起来都不是很方便.网上现有 ...

  6. 笔记本在Win7/Win8/win8.1下安装OS X 10.9.3懒人版通用教程

    转载地址: http://bbs.pcbeta.com/viewthread-1432534-1-1.html Intel 酷睿第二代移动CPU(Sandy Bridge+HM65,HM66等6系列移 ...

  7. 如何更改Code::Blocks背景颜色(懒人版)

    @Code::Blocks 更改Code::Blocks背景颜色 ##经常敲代码的同学都知道Code::Blocks(以下均简称CB)的强大,但它自带的背景色让我们长时间盯着屏幕的眼睛会很不舒服: 当 ...

  8. 黑苹果Yosemite 10.10.1懒人版完美安装及简单驱动设置

    原文地址为: 黑苹果Yosemite 10.10.1懒人版完美安装及简单驱动设置 1.硬件概要 CPU: 英特尔 Xeon E3-1230 V2 (四核) 主板: 技嘉 H77-DS3H (Intel ...

  9. [acer] 地平线:mac记————lion懒人版安装教程全解(驱动贴已更新,亲测通过)

      本人配置 处理器                   英特尔 Core i5-2410M @ 2.30GHz 双核 主   板                   宏碁 Aspire 4750 ( ...

最新文章

  1. js init : function ()
  2. 洛谷P1474 [USACO 2.3]货币系统 Money Systems [2017年4月计划 动态规划04]
  3. 浅谈湖仓一体化对上层机器学习业务的促进
  4. 数据库建模工具PowerDesigner的安装与汉化和破解
  5. 小白学习IOT之模拟设备RRPC命令下发
  6. 坐火车一定要带身份证
  7. CentOS-Samba服务
  8. apache php mysql 整合_PHP+Apache+MySQL整合
  9. 【双11劲爆干货】阿里高级Java面试题(首发,70道)
  10. diff git 代码实现_Git 自救指南:这些坑你都跳得出吗?
  11. 诸葛亮的十堂课:在变局中安身立命,在逆境中找到力量
  12. python打印9宫格,25宫格等奇数格,且横竖斜相加和相等
  13. html子级透明度不随父级别,我不想从CSS的父级继承子级不透明度
  14. 台安变频器n2按键说明_台安n2系列变频器说明书
  15. loadrunner11压力测试设置
  16. 人声歌姬语音合成器+72个歌手音源拓展 – YAMAHA Vocaloid 5 ESV 5.0.3 + LIBRARIES MacOS
  17. iso镜像文件安装linux,详细解说Ubuntu iso安装镜像文件
  18. 十大游戏开发引擎优缺点对比
  19. 前端~javascript~实战案例:网页表白墙/实战案例:简单实现一个备忘录~
  20. 追风筝的人 第五章

热门文章

  1. 【LeetCode笔记】剑指 Offer 45. 把数组排成最小的数(Java、字符串、Lambda)
  2. mysql8支持myISAM_mysql菜鸟手迹8--mysql存储引擎之MyISAM
  3. c语言exit_看了这几个C语言例子,你一定会说5个哇塞,声音一次比一次大
  4. python现在时间减去过去时间等于20分钟怎么写_获取当前时间减去10分钟的话SQL语句怎么写...
  5. 嵌入式编程要不要学数据结构_少儿编程要不要学?其实国家早就给出了答案……...
  6. pakeage php国内镜像,Packagist/Composer中国全量镜像 | 严佳冬
  7. idea添加scala环境_idea怎么在线安装scala并且启动'
  8. 计算机专业英语词汇mp3,【听单词】计算机专业英语词汇音频106,计算机英语单词MP3...
  9. php ob 缓存,php中ob函数缓冲机制深入理解
  10. windows 安装openssh服务端_Git神器| SourceTree安装使用教程