使用硬链接到 .git 而不是 git 工作树
Using hardlink to .git instead of git worktree
Eclipse 中存在一个已知错误,导致它无法使用 git 工作树。
我能想到的唯一可行的解决方法是创建从辅助(分支)工作副本到包含真实 .git 文件夹的主副本的 .git 硬链接。
这种变通方法(在 Windows 平台上)可能会产生什么负面影响?
您可能不想这样做。工作树包括它自己的 HEAD
版本、HEAD
reflog 和索引。这是必需的,因为您签出了两个单独的分支,并且您可以在每个工作树中独立于另一个工作树暂存文件。
如果您将 .git
硬链接到另一个目录,您实际上将拥有相同的 HEAD
,因此您将在同一分支上。此外,您将拥有相同的索引,因此一旦您在一个目录中 运行 git status
,在另一个目录中 运行ning 将导致重新读取每个文件。除此之外,如果您在一个目录中 运行 git add
,它也会反映在另一个目录中。
因此,这可能会导致一堆不愉快,并可能导致一些存储库损坏。如果你想继续使用 Eclipse,使用单独的克隆,或者如果你想使用工作树,你可以使用不同的编辑器。
Eclipse 中存在一个已知错误,导致它无法使用 git 工作树。
我能想到的唯一可行的解决方法是创建从辅助(分支)工作副本到包含真实 .git 文件夹的主副本的 .git 硬链接。
这种变通方法(在 Windows 平台上)可能会产生什么负面影响?
您可能不想这样做。工作树包括它自己的 HEAD
版本、HEAD
reflog 和索引。这是必需的,因为您签出了两个单独的分支,并且您可以在每个工作树中独立于另一个工作树暂存文件。
如果您将 .git
硬链接到另一个目录,您实际上将拥有相同的 HEAD
,因此您将在同一分支上。此外,您将拥有相同的索引,因此一旦您在一个目录中 运行 git status
,在另一个目录中 运行ning 将导致重新读取每个文件。除此之外,如果您在一个目录中 运行 git add
,它也会反映在另一个目录中。
因此,这可能会导致一堆不愉快,并可能导致一些存储库损坏。如果你想继续使用 Eclipse,使用单独的克隆,或者如果你想使用工作树,你可以使用不同的编辑器。