gpt4 book ai didi

git - 我可以为空的 Git 存储库创建工作树吗?

转载 作者:行者123 更新时间:2023-12-05 01:58:06 35 4
gpt4 key购买 nike

我有一个空的 Git 存储库(即它不包含任何提交)。有没有办法使用 git worktree add 命令(使用 --no-checkout 选项)为这个 repo 创建一个工作树?我的意思是指示 Git 不要将新创建的工作树与任何 HEAD 相关联。

最佳答案

在一个完全空的仓库中,不能有分支,因为每个分支名称​​必须标识一个实际的、现有的提交。1但是,主工作树必须是 某个分支上。所以 Git 将它放在一个不存在的分支上,Git 将其称为 unborn 分支(在各种消息和内部代码中)和 orphan 分支(在 git checkout --orphan 之类的标志中) .

理论上,git worktree add 也可以允许 --orphan 将新的工作树放在未出生的分支上。但是,它目前没有这样做。如果您希望为 Git 编写允许它执行此操作的新代码,并将其发送给 Git 维护人员,它可能是包含在未来 Git 版本中的候选者。包含某种相当有说服力的用例可能是个好主意。

在那之前,您不能这样做:您必须至少进行一次初始提交(然后允许创建无限数量的分支名称)。

编辑: 看来 --orphan 可能会出现在下一个 Git 版本中(可能是 2.40)。参见 VonC's comment


1这个约束有点武断,但 Git 无论如何都会这样做,所以必须接受它(或重写 Git)。

关于git - 我可以为空的 Git 存储库创建工作树吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68713495/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com