gpt4 book ai didi

带有 --git-dir= 的 git 结果为 'not a git repository'

转载 作者:IT王子 更新时间:2023-10-29 01:12:45 33 4
gpt4 key购买 nike

我的一个 iOS 应用程序中有一个脚本,它应该获取 git 修订散列并将其放入版本号中。在这个脚本中,我为此运行了 git --git-dir="$PROJECT_DIR"show -s --pretty=format:%h 。但是,我收到消息说该目录不是 git 存储库。如果我回显 PROJECT_DIR var 并转到终端,将执行以下操作:

cd projectDirPath
git show -s --pretty=format:%h

不起作用的是:

git --git-dir=projectDirPath show -s --pretty=format:%h

我错过了什么吗?文档指出,我可以使用 --git-dir 指定 git 存储库的路径,并且指定的路径显然是 git 存储库,因为如果我首先 cd 进入该路径,所有 git 命令都可以正常工作。但是,如果我不在这条道路上,则指定 --git-dir 不起作用。

最佳答案

使用 --git-dir 时,您需要指向存储库的 .git 文件夹。尝试:

git --git-dir=projectDirPath/.git show -s --pretty=format:%h

--git-dir 上的文档说:

--git-dir=

Set the path to the repository (".git" directory). This can also be controlled by setting the GIT_DIR environment variable. It can be an absolute path or relative path to current working directory.

我自己过去常常难以记住这一点。为了帮助我记住该做什么,我试着记住该选项要求的正是它想要的:.git 目录 (git-dir) 的路径。

关于带有 --git-dir= 的 git 结果为 'not a git repository',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12872446/

33 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com