lazygit README

The project's README from github.com/jesseduffield/lazygit. As one markdown file: README.md.

Special thanks to:

Warp
Warp, the intelligent terminal
Available for macOS and Linux
Visit warp.dev to learn more.


Tuple
Tuple, the premier screen sharing app for developers on macOS and Windows.



Subble
I (Jesse) co-founded Subble to save your company time and money by finding unused and over-provisioned SaaS licences. Check it out!


A simple terminal UI for git commands

GitHub Releases Go Report Card Codacy Badge Codacy Badge golangci-lint GitHub tag homebrew

commit_and_push

Sponsors

Maintenance of this project is made possible by all the contributors and sponsors. If you'd like to sponsor this project and have your avatar or company logo appear below click here. 💙

User avatar: Mark LussierUser avatar: Dean HerbertUser avatar: Peter BjorklundUser avatar: Oliver GüntherUser avatar: Pawan DhananjayUser avatar: User avatar: Carsten GehlingUser avatar: User avatar: Chau TranUser avatar: matejcikUser avatar: theAverageDev (Luca Tumedei)User avatar: User avatar: Aliaksandr StelmachonakUser avatar: Pedro PombeiroUser avatar: Burgy BenjaminUser avatar: Joe KlemmerUser avatar: Tobias LütkeUser avatar: Ben BeaumontUser avatar: User avatar: HollyUser avatar: Tom LanserUser avatar: Casey BoettcherUser avatar: Jeff ForcierUser avatar: User avatar: Maciej T. NowakUser avatar: James HillyerdUser avatar: YuryUser avatar: Olivier reivilibreUser avatar: Braden SteffaniakUser avatar: Jordan GillardUser avatar: SebastianUser avatar: Andy SlezakUser avatar: Martin KockUser avatar: Daniel KokottUser avatar: Jan HeijmansUser avatar: Kevin NowaldUser avatar: Ethan LiUser avatar: Robert ForlerUser avatar: Jan ZenknerUser avatar: User avatar: Frederick MorlockUser avatar: Maximilian LangenfeldUser avatar: User avatar: Neil LambertUser avatar: David Heinemeier HanssonUser avatar: Ethan FischerUser avatar: Terry TaiUser avatar: Adam RoesnerUser avatar: Tim MorganUser avatar: Maksym ShypulniakUser avatar: Kovács ÁdámUser avatar: User avatar: Patricio SerranoUser avatar: KiriUser avatar: Steven MasiniUser avatar: John Even BjørnevikUser avatar: Michael OberstUser avatar: Adam TrepanierUser avatar: Kenth FagerlundUser avatar: Julien TardotUser avatar: Ellord TayagUser avatar: Edgar Post-BuijsUser avatar: Pierre SpringUser avatar: Zac ClayUser avatar: Thomas MüllerUser avatar: Carl AssmannUser avatar: Sergey OgnevUser avatar: Moody LiuUser avatar: Michael HowardUser avatar: Lasse Bloch LauritsenUser avatar: David BrockmanUser avatar: Alexander SlavschikUser avatar: Aidan GaulandUser avatar: Maksym BieńkowskiUser avatar: Joshua WootonnUser avatar: User avatar: Simon Sandvik LeeUser avatar: Thomas GilbertUser avatar: Szymon MuchaUser avatar: Unnawut LeepaisalsuwannaUser avatar: Bret WortmanUser avatar: Simon CardonaUser avatar: André LameirinhasUser avatar: Scott VelezUser avatar: justinUser avatar: MayfieldUser avatar: Soma HolidayUser avatar: bizmythUser avatar: DessalinesUser avatar: Sean Hong(홍성민)User avatar: Alex DreymannUser avatar: Felipe OspinaUser avatar: Riccardo NovagliaUser avatar: rxzUser avatar: Robert BuchbergerUser avatar: housekeeperUser avatar: YuriiUser avatar: Pål Syvertsen StakvikUser avatar: User avatar: Zak El Fassi

Elevator Pitch

Rant time: You've heard it before, git is powerful, but what good is that power when everything is so damn hard to do? Interactive rebasing requires you to edit a goddamn TODO file in your editor? Are you kidding me? To stage part of a file you need to use a command line program to step through each hunk and if a hunk can't be split down any further but contains code you don't want to stage, you have to edit an arcane patch file by hand? Are you KIDDING me?! Sometimes you get asked to stash your changes when switching branches only to realise that after you switch and unstash that there weren't even any conflicts and it would have been fine to just checkout the branch directly? YOU HAVE GOT TO BE KIDDING ME!

If you're a mere mortal like me and you're tired of hearing how powerful git is when in your daily life it's a powerful pain in your ass, lazygit might be for you.

Table of contents

lazygit (jesseduffield/lazygit)

Searching Database…

83.3K ·GitHub
这是什么?Lazygit 是一个简单的 git 终端用户界面(TUI),让你通过交互式的可视化界面来暂存、提交、变基、合并和创建分支,无需记住 git 命令行指令。
这是一个库,还是我在终端里运行的独立应用?它是一个独立的终端应用,需要在 git 仓库内启动。它不是库,也不会替代 git,只是把日常的 git 操作封装在可视化界面里。
我该如何安装并开始使用?通过包管理器安装:macOS 上用 Homebrew 或 MacPorts,Windows 上用 Scoop,Linux 则用发行版自带的包管理器(Arch、Fedora、Debian/Ubuntu、Void Linux、Solus)。也可以从 Releases 页面下载预编译的二进制文件。安装后,在任意 git 仓库中运行 'lazygit' 即可。
我需要单独安装 git,还是 lazygit 自带 git?你需要先自行安装 git。lazygit 是一个 Go 语言编写的单一二进制文件,它调用你已安装的 git,而不是替代它。
它也支持 Windows 吗,还是只支持 macOS 和 Linux?它支持 macOS、Linux 和 Windows,每个系统都有专门的安装方式,包括 Windows 上的 Scoop,以及 macOS 上的 Homebrew 和 MacPorts。
lazygit 和直接使用 git 命令行有什么不同?它把需要多个步骤、比较繁琐的 git 操作(比如手动编辑 rebase 的 TODO 文件,或在命令行中逐个浏览 diff 的变更块)变成界面里的简单按键,省去了作者在 README 的 'Elevator Pitch' 中吐槽的那些麻烦。
如果我操作失误,能撤销吗?可以。lazygit 内置了 Undo(撤销)功能,你可以直接在界面中撤销最近的操作,无需翻查 git 的 reflog。
它支持 bisect 或 cherry-pick 等高级操作吗?支持。它为交互式变基、cherry-pick、bisect、worktree,以及自定义的 'rebase magic' 补丁提供了专门的操作流程。
我能在 lazygit 里运行自己的自定义命令吗?可以。你可以调用自己定义的自定义命令,从而在内置的 git 操作之外进行扩展。
What are similar projects?slides, gitui, diff-so-fancy, tview, edit, gitflow, gh-dash, git-extras
Size
165.3 MB
Stars
83.3K
Age
8y
Commits · 90 Days