我如何知道 Git 认为的顶级工作目录是什么?

发布于 2024-11-25 04:47:54 字数 362 浏览 0 评论 0原文

可能的重复:
有没有办法一个命令即可到达 git 根目录?

困惑,认为我位于 Git 工作目录中,但对我来说,顶层工作目录(包含.git/) 是。 (可能该存储库是由错误创建的。)

那么,如果我位于子目录内的某个位置,如何找到顶级 Git 存储库目录?如何让 git 打印它认为当前顶级工作目录是什么?

Possible Duplicate:
Is there a way to get to the git root directory in one command?

Sometimes, I'm confused with git thinking that I'm inside a Git working dir, but it's not obvious to me what the top-level working directory (containing .git/) is. (Probably, that repo was created by a mistake.)

So, how do I find out the top-level Git repo directory if I'm somewhere inside the subdirectories? How do I ask git to print what it thinks the current top-level working directory is?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

静水深流 2024-12-02 04:47:54

试试这个:

git rev-parse --show-toplevel

Try this:

git rev-parse --show-toplevel
澜川若宁 2024-12-02 04:47:54

我写了一个简单的脚本(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 目录的路径。 ..

I've written a simple script (git-find-git-dirs in my "git-shortcuts" collection) to make such queries to Git handy:

#!/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"

and put it to ~/bin/; now I can do my simple query like this:

$ git find-git-dirs
GIT_DIR=/home/imz/.git
GIT_WORK_TREE=
$ 

The only thing I lack from the initial question is the printing of the top-level working dir, now it just prints the path to the internal git repo dir...

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文