Windows Explorer 中是否可以同时显示所有本地分支?

Is it possible to show all local branches at the same time in Windows Explorer?

假设我有 2 个远程分支,Master 和 Developer,并且我的本地存储库位于文件夹 D:/Git_Project.

在 git bash 上,我转到存储库目录和 select 主分支,我在其中创建一个文件夹和一个文件,提交更改,将其推送到远程主分支. 现在我切换到开发人员分支,如果我现在使用 windows 资源管理器转到 D:/Git_Project,我看不到主分支中的文件夹/文件。

现在,我知道 git 将这些更改保存在 .git 文件夹下,并在我们切换分支时加载/保存它们。但是是否可以让它始终显示两个分支,每个分支都有自己的文件夹? 基本上在 D:/Git_Project 下有一个 "Master" 和 "Developer" 文件夹。

我知道我可以 "cheat" 将它们全部放在同一个分支中并自己创建这些文件夹,但如果我这样做的话我会失去 git 分支功能。

我想要这个的原因是因为有时在开发人员或任何其他分支中处理某些文件时,我可能想从另一个分支检查特定文件,而且总是必须切换分支非常烦人只是为了在本地打开一个文件。

谢谢。

最简单的解决方案是在本地克隆存储库 - 创建额外的目录以保留每个分支的 "viewing copies",并且永远不要为这些副本检出不同的分支。 git clone --local --shared /path/to/original /intended/path/to/copy,然后是新的 git checkout master。冲洗并重复您想要的任何额外副本。您不必坚持只使用一份副本进行编辑,但从组织的角度来看,这可能会有所帮助。

由于它是共享的,他们将共享所有实际的提交记录 - 这不会为您提供存储库的备份,只是第二个查看它的地方,所以不要删除一个分支以为你可以从对方那里拿回来。

另请参阅:git clone 的文档。

与其将您的存储库直接放在 D:/Git_Project 下,不如将其克隆到

D:/Git_Project/master

然后,使用 git worktree (with Git 2.5+),您可以在

中检出同一仓库的开发分支
git worktree add ../develop develop
D:/Git_Project/develop

这样就不需要克隆两次(这里甚至不需要共享克隆)