可能重复:
Is there a way to get to the git root directory in one command?
有时候,我对git认为我在Git工作目录中感到困惑,但对我来说,顶级工作目录(包含.git/
)是什么并不明显。 (可能这个回购是由一个错误造成的。)
那么,如果我在子目录中的某个地方,如何查找顶级Git repo目录?如何让git
打印出它认为当前顶级工作目录的内容?
答案 0 :(得分:42)
试试这个:
git rev-parse --show-toplevel
答案 1 :(得分:1)
我在我的“git-find-git-dirs”集合中编写了一个简单的脚本(git-shortcuts),以便向Git提出这样的查询:
#!/bin/bash
# find-git-dirs -- A simple script to "find" (i.e., "print") the GIT_DIR, as assumed by Git. (Useful if you are in a subdir, and you are not sure about the top-level repo dir.)
SUBDIRECTORY_OK=yes
. "$(git --exec-path)/git-sh-setup"
echo "GIT_DIR=$GIT_DIR"
并将其放到~/bin/
;现在我可以这样做我的简单查询:
$ git find-git-dirs
GIT_DIR=/home/imz/.git
GIT_WORK_TREE=
$
我最初的问题中唯一缺少的是打印顶级工作目录,现在只打印内部git repo目录的路径......