【发布时间】:2018-09-22 22:36:00
【问题描述】:
所以我有一个项目早期的提交哈希。如何创建一个新的工作树并让它的分支从这个特定的提交开始?
【问题讨论】:
标签: git git-branch git-commit git-worktree
所以我有一个项目早期的提交哈希。如何创建一个新的工作树并让它的分支从这个特定的提交开始?
【问题讨论】:
标签: git git-branch git-commit git-worktree
在工作树之前创建分支:
git branch newbranch $SHA1
git worktree add /path/to/wt newbranch
【讨论】:
使用the git worktree documentation中描述的命令:
git worktree add [--detach] [-b
] [ ]
在这种情况下可能是,例如:
$ cd gitrepo
$ git worktree add -b workbranch ../gitrepo.workbranch d16c37964
Preparing ../gitrepo.workbranch (identifier gitrepo.workbranch)
HEAD is now at d16c37964 Merge branch 'jk/attributes-path-doc'
之后:
$ cd ../gitrepo.workbranch
$ git status
On branch workbranch
nothing to commit, working tree clean
$ git rev-parse HEAD
d16c37964c284fa599251caafb51128c0df925a9
【讨论】:
--detach。使用现有分支名称时,您将使用 --detach 强制工作树进入“分离 HEAD”模式。当心-B(大写B),它可以强制重置现有的分支名称以指向特定的提交。