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
复制代码

 

posted @   lypbendlf  阅读(28)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 一个费力不讨好的项目,让我损失了近一半的绩效!
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 实操Deepseek接入个人知识库
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
历史上的今天:
2019-03-18 DLNg序列模型第二周NLP与词嵌入
2019-03-18 tf中的run()与eval()【转载】
点击右上角即可分享
微信分享提示