是否可以在Windows资源管理器中同时显示所有本地分支?

时间:2016-09-21 20:41:30

标签: git git-bash

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

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

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

我知道我可以“欺骗”并将其全部放在同一个分支中并自己创建这些文件夹,但如果我这样做,我将失去git分支功能。

我想要这个的原因是因为有时在开发人员或任何其他分支中处理某个文件时,我可能想要检查来自另一个分支的特定文件,并且总是必须将分支切换到在本地打开一个文件。

谢谢。

2 个答案:

答案 0 :(得分:2)

您可以在

下克隆它,而不是将您的仓库直接放在D:/ Git_Project下
D:/Git_Project/master

然后,使用git worktreewith Git 2.5+),您可以在

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

这样,您不需要克隆两次(这里不需要共享克隆)

答案 1 :(得分:1)

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

由于它是共享的,它们将共享所有实际的提交记录 - 这不会给你备份你的仓库,只是第二个位置来查看它,所以不要删除一个分支,一个认为你可以从另一个回来。

另请参阅:git clone的文档。