Git 如何获取超级项目根目录?

Git 如何获取超级项目根目录?,git,git-submodules,Git,Git Submodules,显示如何获取当前git树的根目录,但是如果我有一个超级项目(比如目录为:/a/b/mySuper)和子模块目录sub1、sub2和sub3,那么当我当前的$PWD为“/a/b/mySuper/sub2/dir1”时,如何获取超级项目的根目录(在本例中为“/a/b/mySuper”),如果我从'/a/b/mySuper/sub2/dir1'运行git rev parse--show toplevel,它将打印'/a/b/mySuper/sub2',而我正在寻找一个命令来打印top super的目录

显示如何获取当前git树的根目录,但是如果我有一个超级项目(比如目录为:/a/b/mySuper)和子模块目录sub1、sub2和sub3,那么当我当前的
$PWD
为“/a/b/mySuper/sub2/dir1”时,如何获取超级项目的根目录(在本例中为“/a/b/mySuper”),如果我从'/a/b/mySuper/sub2/dir1'运行
git rev parse--show toplevel
,它将打印'/a/b/mySuper/sub2',而我正在寻找一个命令来打印top super的目录'/a/b/mySuper'

git rev-parse --show-superproject-working-tree

我认为这是Git2.13.0中出现的。请注意,这仅显示即时超级项目,如果不是从子模块中调用,则不会将任何内容打印到标准输出。

子模块(目录)甚至可能不知道它是子模块。此外,它可能有多个父目录,如果是符号链接等。您应该将它们视为独立的存储库,或者不使用子模块。