git worktree学习
转自:https://blog.csdn.net/qq_35067322/article/details/121551469
https://jasonkayzk.github.io/2020/05/03/Git-Worktree的使用/
1.介绍
当在一个仓储下,在A分支编译时,是不能切到B分支上工作的,只能等着A编译完成,很影响效率。所以可以使用worktree命令新建一个工作分支。
步骤1:在A分支上编译前,使用以下命令新建一个关于devB分支的目录:
git worktree add ../devB devB
步骤2:切换到新目录下,切换到目标分支B开发,可以在新目录下
分支A已经编译完成后,那么如果再切换回原来的目录,是无法切换到分支B的,会报错:
所以直接在devB目录下推到远程就行,直接之后都在devB上开发,devB开发完成合并到远程分支后,删除devB就行。相当于新建的worktree接管了该分支,在原来的目录下不能切换到该分支,除非将新建的worktree list删除,两个独立的目录。
相关命令:
# 列出当前仓库已经存在的所有 worktree 的详细情况,包括每个 worktree 的关联目录,当前的提交点的哈希码和当前 checkout 到的关联分支。 git worktree list # 删除worktree, 同时删除检出目录,当git版本2.17.0时,用该方法删除新建的worktree git worktree remove -f <worktree>
#当git版本较低时,需要先手动删除目录,再prune删除worktree
$ git worktree list
$ rm -rf path/to/worktree
$ git worktree prune
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
2019-03-18 DLNg序列模型第二周NLP与词嵌入
2019-03-18 tf中的run()与eval()【转载】