Git 命令未在 makefile 中返回任何值

Moh*_*kim 1 linux git bash shell makefile

我有一个简单的 makefile,它应该打印 Git 日志,如下所示。

SHELL=/bin/bash

get_log:
    echo $(git log)
Run Code Online (Sandbox Code Playgroud)

但是,当我运行时,make get_log没有任何返回。虽然如果我git log直接在 CMD 中运行,我会得到结果。

这里可能有什么问题?

注意:make文件格式正确;我在这里使用空格而不是制表符来发布问题。

Vro*_*del 6

线路

\n
 echo $(git log)\n
Run Code Online (Sandbox Code Playgroud)\n

有两个缺陷:它使用一个 single$告诉 make 查找变量的内容git,但带有错误的空格和log添加。我不认为make在这种格式不正确的访问下会找到任何东西,这意味着它默默地用……什么也没有替换表达式。其次,无论如何,您都不需要按echo原样git log写入标准输出。所以正确的形式就是:

\n
get_log:\n   git log\n
Run Code Online (Sandbox Code Playgroud)\n

如果这非常有帮助则是另一个问题。我更喜欢在 script\xe2\x80\x94 中进行关注点分离,只要你不能添加任何好处,比如从部署分支获取日志或类似的东西,我就不会摆弄 Git。无论如何,用户必须学习其基础知识log

\n

PS:我建议你阅读GNU Make Manual上的手册,因为你连最基本的理解都缺乏make(无意冒犯),并且在这一点上(缺乏)知识会让你一次又一次感到沮丧。

\n