Git 获取特定 .git 文件夹的提交消息

Git get message of a commit with specific .git folder

正如所讨论的那样here我们可以通过命令

获取给定修订的提交消息
$ git log --format=%B -n 1 $revNum

尽管此命令要求我们在 内部 git 存储库文件夹,即包含 .git 文件夹的文件夹下方的某处。这要求我们每次要调用命令(从外部工作目录)时 pushd and popd 进出 .git 文件夹。

我正在寻找 git log 命令的参数来帮助指定 .git 文件夹。请分享你所知道的。

p.s.

我的 google 发现我 this one 虽然添加 --git-dir=$myCode/.git --work-tree=$myCode 不适用于 git log 命令。

我认为您可以使用 -C option。但是请记住,您需要在要使用的 git 命令之前添加 -C 选项 (log, status , ...).

例如:

git -C ~/src/docker log

但以下将不起作用:

git log -C ~/src/docker

您也可以使用 --git-dir,但在那种情况下您不能使用 globbing 的 shell 功能,您需要使用完整路径(没有 * , ~, 等等):

git --git-dir=/home/nam/src/docker/.git log