Git worktree(工作树)
worktree 工作树
简介
重新给分支/提交一个新的工作区域,且原工作区无法在switch到那个分支,只有释放了才行
新增一个工作树之后,
- 原仓库目录的.git文件夹中产生一个worktree的文件夹,里面放置着相关的数据,
- 新工作树的目录中没有.git文件夹,而是有一个.git的文件
用法
-
git worktree list [--porcelain]$ git worktree list查看工作区$ git worktree list --porcelain查看更详细的工作区
-
git worktree add [-f|--force] [-c|--checkout] [--lock] [-b <new-branch>] <path> [<commit-ish>]$ git worktree add ../path master从master分支开出一个树分支$ git worktree add ../path master -b bug_fix
-
git worktree prune [-n] [-v] [--expire <expire>]- 清理工作树(工作目录人为删除后 使用list命令后,工作树后面会出现prunable字样),
$ git worktree prune
-
git worktree remove [-f] <worktree>$ git worktree remove ../path移除树分支$ git worktree remove -f ../path强制移除树分支
-
git worktree lock [--reason <string>] <worktree>- 锁定工作树,防治一些外界因素导致git定期清理掉工作树了,比如外置硬盘
$ git worktree lock ../path
-
git worktree unlock <worktree>$ git worktree unlock ../path
-
git worktree move <worktree> <new-path>- 移动工作树到新的目录中
-
git worktree repair [<path>...]- 修复工作树,(如果新工作树中无法正常指向原仓库,可试着在原仓库中执行该命令修复它)
帮助
$ git help worktree

浙公网安备 33010602011771号