如何命令repo在不相关的文件夹中签出分支?

时间:2014-04-19 08:14:42

标签: git github git-branch

想象一下这个文件夹结构:

foo/
  bar/.git # branch=master
  baz/.git # branch=test

现在假设我当前的路径是foo/bar,但是没有切换目录,我想编写一个命令,告诉baz检查分支master(已经存储在本地)。在一个理想的世界中,这看起来像是:

[foo/bar]$ git --use-path=../baz checkout master
[foo/bar]$

我试图避免这样做:

[foo/bar]$ cd ../baz
[foo/baz]$ git checkout master
[foo/baz]$ cd ../bar
[foo/bar]$

我也更喜欢内置于git中的内容,并希望避免连接命令。

1 个答案:

答案 0 :(得分:2)

您可以使用-C开关。从手册:

  

-C <path>

     

像在<path>而不是当前工作目录中启动git一样运行。如果给出了多个-C选项,则相对于前一个-C <path>解释每个后续的非绝对-C <path>

Git 1.8.5中添加了此功能。