新闻详情

新闻详情

首页 / 资讯中心 / 详情

lazygit 退出后如何让 shell 自动切换到所选择的仓库目录

发布时间:2026/9/9 21:46:08来源:尧图网络
lazygit 退出后如何让 shell 自动切换到所选择的仓库目录
lazygit 退出后如何让 shell 自动切换到所选择的仓库目录【免费下载链接】lazygitsimple terminal UI for git commands项目地址: https://gitcode.com/GitHub_Trending/la/lazygit在 lazygit 里切换到另一个仓库后退出默认情况下 shell 仍停留在启动 lazygit 时所在的目录需要手动cd回去。lazygit 内置了一个目录记录机制退出时把当前所在目录写到一个由环境变量LAZYGIT_NEW_DIR_FILE指定的文件里。按 README 的 Changing Directory On Exit 一节在 shell 启动文件中定义一个包装函数lg来设置该变量之后每次用lg启动 lazygit 并退出shell 就会自动cd到退出时在 lazygit 中的目录。本文只覆盖这一功能适用于已安装 lazygit、并能编辑 shell 配置文件zsh 的~/.zshrc其他 shell 用对应的 rc 文件的环境。机制说明包装函数做了三件事对应 record_directory_helper.go 的实现export LAZYGIT_NEW_DIR_FILE~/.lazygit/newdir在运行lazygit前设置环境变量。源码中该变量为空时不做任何记录变量被设置后lazygit 退出时会把当前工作目录写入该文件lazygit 退出后函数检查~/.lazygit/newdir是否存在存在则cd $(cat ...)进入其中记录的目录rm -f $LAZYGIT_NEW_DIR_FILE删除这个临时文件避免下次启动时读到过期的目录。该命令只会删除函数自己约定的临时文件~/.lazygit/newdir。因此这套机制只有通过lg函数启动时才生效直接运行lazygit时环境变量未设置不会写目录文件也不会有自动切换行为。配置步骤在~/.zshrc或使用中的其他 rc 文件末尾添加以下内容与 README 原文一致lg() { export LAZYGIT_NEW_DIR_FILE~/.lazygit/newdir lazygit $ if [ -f $LAZYGIT_NEW_DIR_FILE ]; then cd $(cat $LAZYGIT_NEW_DIR_FILE) rm -f $LAZYGIT_NEW_DIR_FILE /dev/null fi }让配置在当前 shell 生效source ~/.zshrc之后用lg代替lazygit启动。在 lazygit 里切换到你想要的仓库例如在仓库面板中选中其他仓库操作完成后按q退出。验证方式按 README 的描述成功条件是配置生效后when you calllgand exit youll switch directories to whatever you were in inside lazygit即退出后 shell 的当前目录就是退出时 lazygit 所在的目录。退出后运行pwd应显示你最后所在的仓库路径而不是启动lg前的路径。如果目录没有变化优先检查启动方式是否为lg而不是直接lazygit以及 rc 文件是否已source。保持原目录的退出方式README 指出可以用shiftQ代替q退出以覆盖自动切换行为。从 gui.go 的退出逻辑看此时 lazygit 记录的是启动时的初始目录InitialDir而非退出时的当前目录效果就是 shell 停留在或切回你启动 lazygit 的原始位置。限制文档示例以 zsh 的~/.zshrc为准其他 shell 需把函数写入自己的 rc 文件后再 source自动切换依赖lg函数在子进程中导出的环境变量任何绕过该函数的启动方式直接调用lazygit、脚本里写死二进制路径等都不会触发目录记录该功能不涉及在 lazygit 内部改变任何 git 状态只影响退出后 shell 的工作目录。【免费下载链接】lazygitsimple terminal UI for git commands项目地址: https://gitcode.com/GitHub_Trending/la/lazygit创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
网站建设高端定制企业官网
RELATED

相关资讯

更多精彩内容,欢迎继续阅读

较早相关资讯

最新相关资讯

Gemini API JSON 文本摘要实战:3 步把长文本变成结构化数据 2026/9/9 22:28:25

Gemini API JSON 文本摘要实战:3 步把长文本变成结构化数据

Gemini API JSON 文本摘要实战:3 步把长文本变成结构化数据 【免费下载链接】cookbook Examples and guides for using the Gemini API 项目地址: https://gitcode.com/GitHub_Trending/coo/cookbook 想让小说、新闻、研报变成可入库的机器可读字段&#xff…

阅读更多 →
JAVA毕设项目:基于SpringBoot的高校仪器设备共享预约管理系统的设计与实现 基于SpringBoot的实验设备资源共享预约服务系统的设计与实现 (源码+文档,讲解、调试运行,定制等) 2026/9/9 22:28:25

JAVA毕设项目:基于SpringBoot的高校仪器设备共享预约管理系统的设计与实现 基于SpringBoot的实验设备资源共享预约服务系统的设计与实现 (源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

阅读更多 →
JAVA毕设项目: 基于SpringBoot的大数据学习资源推荐系统的设计与实现 基于SpringBoot的自适应学习资源推荐系统的设计与实现 (源码+文档,讲解、调试运行,定制等) 2026/9/9 22:28:25

JAVA毕设项目: 基于SpringBoot的大数据学习资源推荐系统的设计与实现 基于SpringBoot的自适应学习资源推荐系统的设计与实现 (源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

阅读更多 →
JAVA毕设项目:依托SpringBoot与Vue技术的企业职工健康数字化监管平台构建 企业智能化办公下职工健康监护信息管理系统的研发与实践 (源码+文档,讲解、调试运行,定制等) 2026/9/9 22:28:25

JAVA毕设项目:依托SpringBoot与Vue技术的企业职工健康数字化监管平台构建 企业智能化办公下职工健康监护信息管理系统的研发与实践 (源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

阅读更多 →
JAVA毕设项目:Vue前端可视化+SpringBoot后端赋能的职工健康监护管理系统研发实践 面向职工健康数据监管的智能化管理系统设计 (源码+文档,讲解、调试运行,定制等) 2026/9/9 22:28:24

JAVA毕设项目:Vue前端可视化+SpringBoot后端赋能的职工健康监护管理系统研发实践 面向职工健康数据监管的智能化管理系统设计 (源码+文档,讲解、调试运行,定制等)

博主介绍:✌️码农一枚 ,专注于大学生项目实战开发、讲解和毕业🚢文撰写修改等。全栈领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围:&am…

阅读更多 →
OpenClaw 一键部署实战:环境配置、模型接入与高频报错排查指南 2026/9/9 22:25:22

OpenClaw 一键部署实战:环境配置、模型接入与高频报错排查指南

1. OpenClaw 为什么要做成一键部署1.1 OpenClaw 到底是什么OpenClaw 这个东西,说白了就是一个开源的 AI 智能体编排工具,也是我最近折腾得最多的一键部署工具。圈子里常把它调侃叫“龙虾”——Claw 在英文里就是螯爪的意思,社区头像也经常是只…

阅读更多 →

今日资讯

本周资讯

本月资讯

看完文章仍有疑问?

联系尧图顾问,获取一对一建站咨询

立即免费咨询 📞 400-888-8888
📞