Git命令行可视化管理工具:lazygit
小伙伴们大家好我是小溪见字如面。最近一直在使用CLI开发已经很久没有打开过IDE了只有在检查Diff和提交代码时才会打开IDE那有没有可以不依赖IDE就能可视化查看Diff和管理Git的工具呢还真有最近发现一个可视化Git命令行管理工具lazygit在一定程度上可以解决这个的痛点。当前使用版本0.60.0优势支持macOS、Linux、Windows多平台可视化git状态及管理限制macOS 10.12及以上版本TUI环境限制无法展示复杂的图形化提交树或高分辨率的代码差异对比简介lazygit 是一款基于Go语言开发的终端交互式Git界面。它旨在通过简洁的键盘快捷键简化复杂的 Git 操作让开发者既能享受命令行的速度又能拥有图形化界面的直观体验。Github地址https://github.com/jesseduffield/lazygit核心优势lazygit CLI具有以下核心优势交互式变基 (Interactive Rebase) 极其简单这是其最大杀手锏。相比于 Git 原生复杂的 TODO 文件编辑在lazygit中你只需按下 i 即可开始并能通过快捷键轻松完成Squash (s)、Fixup (f)、Drop (d)或 调整提交顺序 (ctrlk/j)。精细化暂存 (Staging)支持对文件内的特定行 (Line-by-line) 或特定区块进行暂存。通过按下 v 进入行选择模式可以非常直观地拆分大提交。可视化冲突解决在处理合并冲突时它提供了清晰的对比视图允许用户通过快捷键快速选择保留哪一方的代码极大降低了手动编辑冲突文件的出错率。高效的工作区管理 (Worktrees)内置了对 Git Worktree 的原生支持。在分支面板按 w 即可创建并跳转到新工作树无需为了切换任务而频繁使用stash。高度可定制用户可以通过 自定义命令 (Custom Commands) 扩展功能甚至可以集成 GitHub CLI (gh) 来在终端内直接查看 Pull Request 状态。安装macOS可以使用Homebrew和MacPorts安装# Homebrew$ brewinstalllazygit# MacPorts$sudoportinstalllazygitLinux的支持非常全面几乎涵盖了所有主流发行版# apt$aptinstalllazygit# pacman$sudopacman-Slazygit# dnf$ dnf coprenabledejan/lazygitWindows支持 Windows 10/11# winget$ wingetinstall--idJesseDuffield.lazygit# scoop$ scoopinstalllazygit# choco$ chocoinstalllazygit安装完成后在命令行终端输入 lazygit --version 查看安装状态能正常打印版本消息标明安装成功基本使用命令行参数在命令行终端输入 lazygit -h 查看命令行文档lazygit提供了以下命令行参数-h|–help显示带有可用标志、子命令和位置值参数的帮助信息-p|–path 指定要打开的Git仓库路径等同于 --work-tree–git-dir/.git/-f|–filter 在 git log – 中过滤的路径。在过滤模式下提交记录、引用日志reflog和暂存栈stash将根据给定路径进行过滤且某些操作会受到限制-v|–version 打印当前版本-d|–debug 以带有日志记录的调试模式运行-l|–logs 追踪Taillazygit 日志旨在当 lazygit --debug 在另一个终端标签页中调用时使用。–profile 启动性能分析器profiler并在 http 6060 端口提供服务详见 CONTRIBUTING.md-c|–config 打印默认配置-cd|–print-config-dir 打印配置目录-ucd|–use-config-dir 使用提供的目录覆盖默认配置目录-w|–work-tree 等同于 git 的 --work-tree参数-g|–git-dir 等同于 git 的–git-dir 参数主要用于非标准布局的项目仓库-ucf|–use-config-file 自定义配置文件的逗号分隔列表-sm|–screen-mode 初始屏幕模式决定焦点面板的大小有效选项‘normal’ (默认)、 ‘half’、‘full’快捷键lazygit CLI提供了便捷的快捷键操作1全局操作(Global)?打开帮助菜单q退出/返回Q强行退出 (不切换目录)zUndo (撤销上一步操作)ZRedo (重做上一步操作)Tab/方向键切换面板 (Files/Branches/Commits/Stash) / _循环切换窗口放大模式/Filter (搜索过滤当前面板内容)2文件面板 (Files Panel)Space(空格键)Stage / Unstage (暂存/取消暂存单个文件)a暂存所有变更 (Stage all)cCommit (提交变更)AAmend (将当前暂存内容追加到上一次提交)dDiscard (放弃单个文件的修改)DReset (弹出重置选项菜单如 Nuke 或 Hard Reset)e编辑文件 (使用默认编辑器)i将文件添加至 .gitignoreEnter进入文件预览可进行行级暂存3分支面板 (Branches Panel)SpaceCheckout (切换到选中分支)n创建新分支d删除分支MMerge (合并选中分支到当前分支)rRebase (将当前分支变基到选中分支)wWorktree (基于选中分支创建工作树)GOpen PR (在浏览器中打开 GitHub PR需安装 gh)i显示 Gitflow 选项 (需安装 Gitflow)4提交记录面板 (Commits Panel)pPull (拉取远程代码)PPush (推送代码到远程)CCherry-pick (复制提交记录)VCherry-pick Paste (粘贴/应用复制的提交)iInteractive Rebase (对选中提交启动交互式变基)bBisect (开始二分查找调试)WCompare (标记该提交以进行差异对比)5变基/编辑模式 (Rebase mode)sSquash (压缩提交)fFixup (修复提交合并且不保留信息)dDrop (删除提交)eEdit (编辑提交)Ctrl k将提交记录上移Ctrl j将提交记录下移启动lazygit打开命令行终端cd到项目工作区输入lazygit 即可启动命令行工具启动后界面布局如下分支管理1创建分支使用快捷键【Tab】或者左右箭头或者使用数字【3】切换到分支面板 (Branches Panel)然后使用快捷键【n】唤起分支菜单输入分支名称回车创建一个新分支使用【Enter】键可查看分支详情2切换分支在分支面板使用上下键选中需要切换的分支使用快捷键【Space(空格键)】即可切换分支3合并分支切好到主分支光标选中需要合并的分支feat/login然后使用快捷键【Shiftm】唤起合并菜单选择合适的merge方式回车即可将分支合并到主分支4重置分支如果在本地执行了 Merge还没有把代码 Push 到远程仓库可以使用 Undo功能撤销merge操作直接使用快捷键【z】如果 z 无法满足需求或者想精准回退到某个版本可以切换到提交记录面板使用快捷键【g】弹出重置选项菜单选择重置模式回车刚刚合并的变更就没了5删除分支在分支面板选中需要删除的分支使用快捷键【d】唤起菜单选择删除模式回车即可删除代码管理1拉取代码在分支面板使用快捷键【p】即可对当前分支执行pull操作使用快捷键【f】可执行fetch操作2暂存代码在项目中新建一个文件可以在文件面板看到文件状态为【??】表示还未添加到工作区使用快捷键【Space(空格键)】或者【a】将文件添加到工作区并暂存文件可以在右下角【Command log】看到实时命令3放弃代码在文件面板使用快捷键【d】打开菜单选择【Discard all changes】后使用快捷键【Enter】或者双击即可放弃变更4提交代码切换到分支面板使用快捷键【c】填写提交信息回车后即可在当前分支看到commit记录使用快捷键【Shiftp】即可提交变更Tag管理1创建Tag1、在分支面板创建的Tag会以分支为基础创建2、在Tags面板创建的Tag会以当前Tag为基础创建会保留当前Tag的提交信息在分支面板使用快捷键【Shiftt】或者切换到【Tags】使用快捷键【n】唤起Tag菜单回车确定就创建了一个新的Tag2删除Tag在分支面板切换到【Tags】使用快捷键【d】唤起菜单选择删除模式回车Worktree1创建Worktree选择分支面板使用快捷键【w】创建Worktree可以选择从主分支创建也可以选择从主分支某个Commit Hash创建输入Worktree路径输入分支名称切换到文件面板选中【Worktrees】可以看到刚刚创建的 ./worktrees/feat-login2删除Worktree首先在分支面板切换到主分支在文件面板切换到【Worktress】选择需要删除的Worktree使用快捷键【d】回车后Worktree就被删除了注意这里只会删除Worktree并不会删除创建Worktree时创建的分支如需删除分支需要单独删除自定义命令打开全局配置文件Linux: ~/.config/lazygit/config.ymlMacOS: ~/Library/Application\ Support/lazygit/config.ymlWindows: %LOCALAPPDATA%\lazygit\config.yml (default location, but it will also be found in %APPDATA%\lazygit\config.yml这里我们在分支面板创建一个自定义命令创建一个Tag并直接提交使用快捷键【Shiftg】触发在 config.yml文件中配置内容如下customCommands: - key:G# 改用 Shift T 触发context:localBranches# 作用范围设为本地分支面板command:git tag {{index .PromptResponses 0}} {{.SelectedLocalBranch.Name}} git push origin {{index .PromptResponses 0}}description:为选中分支创建并推送 Tagprompts: - type:inputtitle:输入 Tag 名称:initialValue:vloadingText:正在同步 Tag 到远程...重启lazygit CLI切换到分支面板使用快捷键【Shiftg】触发我们也可以以此类推在提交记录面板自定义类似的Tag命令customCommands: - key:tcontext:commits# 仅在 Commits 提交面板生效command:git tag {{index .PromptResponses 0}}description:为选中的提交创建新标签prompts: - type:inputtitle:输入 Tag 名称:initialValue:v1.0.loadingText:正在创建标签...友情提示见原文Git命令行可视化管理工具lazygit

相关新闻

Nintendo Switch文件管理的终极工具:NSC_BUILDER完全指南 [特殊字符]

Nintendo Switch文件管理的终极工具:NSC_BUILDER完全指南 [特殊字符]

Nintendo Switch文件管理的终极工具:NSC_BUILDER完全指南 🎮 【免费下载链接】NSC_BUILDER Nintendo Switch Cleaner and Builder. A batchfile, python and html script based in hacbuild and Nuts python libraries. Designed initially to erase tit…

2026/10/12 23:05:43 阅读更多 →
好用的在线笔试系统:构建智能、严肃、全方位防作弊监考体系

好用的在线笔试系统:构建智能、严肃、全方位防作弊监考体系

在各类高规格考试中,确保考试的公平性和权威性始终是组织者关注的核心问题。然而,传统考试模式面临着诸多挑战,严重影响了考试的公正性和可信度。首先,作弊行为难以察觉是当前考试体系中最突出的问题之一。考生可能通过传递纸条、…

2026/10/13 1:19:13 阅读更多 →
Claude Code自动模式:AI编程助手如何通过全局上下文理解提升效率与安全性

Claude Code自动模式:AI编程助手如何通过全局上下文理解提升效率与安全性

大家好,我是专注于技术分享的博主。最近在探索AI编程助手时,发现Claude Code的“自动模式”默认开启,这看似微小的变化,实则对开发者的工作流和代码安全产生了深远影响,尤其是它几乎将“间接提示注入”这类安全风险降到…

2026/10/15 17:30:38 阅读更多 →

最新新闻

《余烬边境》评测:搜打撤只是表象,RPG叙事选择才是精髓

《余烬边境》评测:搜打撤只是表象,RPG叙事选择才是精髓

1. 搜打撤基因几乎没有短板:这就是它抛出的烟雾弹我不知道多少人跟我一样,是抱着“找个塔科夫代餐”的心态点进《余烬边境》的。至少在我这儿,前四十个小时完全被骗得死死的——组队界面、装备槽、撤离点,甚至那个“局域网队友误伤…

2026/10/17 11:34:29 阅读更多 →
FlexPipe:碎片化GPU集群下的LLM推理动态并行策略换挡

FlexPipe:碎片化GPU集群下的LLM推理动态并行策略换挡

1. 所谓"碎片化GPU集群":先说清楚我面对的资源形态 如果你在某个公司管过一阵子大模型推理集群,大概率遇到过这个场景:明明集群里堆着不少卡,可线上推理服务的延迟曲线就是不稳定,白天高峰期还能勉强稳住&am…

2026/10/17 11:34:29 阅读更多 →
更新DOM完全指南:从原生操作到虚拟DOM渲染机制

更新DOM完全指南:从原生操作到虚拟DOM渲染机制

有人问更新DOM是什么操作,我认真想了想这个问题有人问“更新DOM是什么操作”的时候,往往是遇到了这样一种情况:代码里明明把数据改了,页面上却纹丝不动。或者更糟,页面动了,但输入框的焦点丢了、滚动条跳了…

2026/10/17 11:34:29 阅读更多 →
基于SpringBoot+Vue的智能图书馆管理系统全栈实战

基于SpringBoot+Vue的智能图书馆管理系统全栈实战

1. 从一次借书排队说起:这个系统解决的实际问题先说清楚我为什么动手做这个系统。基于SpringBoot Vue的智能图书馆管理系统,最早是源自一个困扰了很久的业务场景:某高校图书馆的日常借阅管理,被几套老系统和手工台账拆得稀碎。当…

2026/10/17 11:34:29 阅读更多 →
缺陷处理流程与软件测试生命周期:一线团队实操指南

缺陷处理流程与软件测试生命周期:一线团队实操指南

做软件测试这些年,被问得最多的问题不是“哪个测试工具好用”,也不是“怎么设计测试用例”,而是更基础也更要命的一个——发现一个Bug之后,到底该怎么处理才不算错?尤其是2020年前后那段时间,很多团队正从传…

2026/10/17 11:34:29 阅读更多 →
从词袋到即插即用:文本分类技术演进与实战指南

从词袋到即插即用:文本分类技术演进与实战指南

1. 文本分类的演进脉络与核心痛点拆解 文本分类这件事,说起来简单,做起来坑多。你手头有一堆文本,想给它们自动打上标签——情感是正面还是负面、邮件是正常还是垃圾、工单该分给哪个部门——这就是文本分类要解决的问题。从最早的词袋模型一…

2026/10/17 11:33:28 阅读更多 →

日新闻

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

DeepSeek选型与部署:V3/R1、Ollama、API全攻略

简介:《DeepSeek使用方法.pdf》是一份面向DeepSeek入门及进阶用户的完整使用指南,重点围绕V3与R1两款模型的能力差异与适用场景展开,帮助读者根据任务类型与成本选择合适的模型。资源共1个PDF文件,压缩包大小约311KB,篇…

2026/10/17 0:00:25 阅读更多 →
200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

200+Deepseek润色指令拆解:从底层原理到场景落地的完整指南

简介:这是一份聚焦DeepSeek提示词优化的《200Deepseek润色指令》PDF文档,共收录两百余条可直接套用的润色指令,涵盖语法修正、风格统一、逻辑梳理、表达精炼等维度,并针对商务写作、学术论文、广告文案等场景给出差异化建议。文档…

2026/10/17 0:00:25 阅读更多 →
OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

OpenCV轮廓法物体计数系统:轻量、可控、可落地的工业级实现

简介:本资源是一份基于OpenCV的本科课程设计完整报告,面向计算机视觉初学者、图像处理学习者及高校通信/信息类专业学生,解决物体智能计数与检测结果结构化记录的实际问题。项目覆盖图像预处理、轮廓检测、边界框绘制、轨迹栏交互式参数调节、…

2026/10/17 0:00:25 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/16 21:35:51 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/17 1:44:59 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/16 15:04:24 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 21:54:38 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 3:49:43 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/16 14:23:36 阅读更多 →