1

我使用 git worktree 概念来创建多个工作目录。每个功能和/或错误修复一个。因此,我将创建一个存储库的 git 克隆一次,然后根据需要开始创建工作树。

当我克隆一个 git 存储库时,默认情况下会签出一个工作目录 - 主工作树。我们不使用并且不必要地占用空间。所以我正在寻找一种方法来创建一个 git repo,并在开始时检查一个工作目录。

我试过了git clone --bare <url> ./test-git

它实际上创建了一个没有工作目录的 git repo,但我无法从中创建一个 git 工作树。我曾经抛出以下错误 -

bash-4.4 [/user/darshan/test-git] $git worktree add -b test-git-worktree.repo ../test-git-worktree origin/repo
Preparing worktree (new branch 'test-git-worktree.repo')
fatal: Not a valid object name: 'origin/repo'.
  1. 我究竟做错了什么?

我进入.gitgit clone bare命令创建的目录,发现缺少index文件和目录。lfs这两个项目将出现在.git从完整的 git 克隆创建的目录中。

  1. 这两项表示什么?
  2. 在运行什么 git 命令时,我会得到这些项目吗?
4

1 回答 1

0

我们可以使用 - 创建一个没有工作副本的 git 存储库 -

git clone -n <url>

这只是创建一个目录(带有存储库名称),其中包含.git目录。

注意:此外,我希望使用 git clone --bare 也应该提供类似的功能。但是还没有弄清楚。

于 2020-10-23T11:21:36.523 回答