git worktree 使用笔记
一 worktree 的基本概念和操作#
再也不用克隆多个仓库啦!git worktree 一个 git 仓库可以连接多个工作目录 - walterlv的专栏 - CSDN博客
再也不用克隆多个仓库啦!git worktree 一个 git 仓库可以连接多个工作目录 - walterlv
二 语法速览#
-
最简单的写法:
git worktree add <新路径>
将基于当前分支,新建一个 worktree 目录,新的分支名就是新建目录的名称。 -
新建一个指定分支
git worktree add <新路径> -b <新分支名>
将基于当前分支,新建一个 worktree 目录,新的分支名是指定的名称。 -
基于指定分支新建一个指定分支
git worktree add <新路径> -b <新分支名> <指定分支名>
将基于指定分支,新建一个 worktree 目录,新的分支名是指定的名称。
三 注意事项#
-
<新路径>
新路径一般是类似../myproject-bugfix
这样的命名,是相对路径,注意,这里一定是两个点:
../myproject-bugfix
表示在当前目录的父目录新建,这样才是与原工程目录平级。(当前,你当前得在原工程的跟目录中。)
总之,注意相对路径。 -
使用 git reset --hard 重置新的 worktree
如果使用了git worktree add <新路径>
最简单的方法新建,通常分支需要重新命名,基于的分支也要改。
可使用git reset --hard <要基于的分支名>
重置到想要的分支,使用git branch -D <想要删除的分支名>
删除自动创建的与目录名相同的分支。
四 其它废话#
相比复制多个仓库,肯定是 worktree 的方式更高效。
当然,worktree 不允许两个 worktree 使用同一个分支。如果有这个需要怎么办?新建一个分支,reset 到目标分支,再基于这个新分支工作,效果一样。
但如果你经常需要在两个目录中使用同一个分支,那么可能是分支管理或工作方式需要改进。
另外,不使用的 worktree 尽早删除,并运行 git worktree prune
清理。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)