git - 从 Makefile 跟踪分支更改

标签 git makefile hook

对于 Makefile 而言,如何发现当前分支的 HEAD 发生了变化?

我正在寻找类似这样的东西,但对于通用的当前分支:

all: report.txt

report.txt: .git/refs/heads/master
    touch report.txt

最佳答案

.git/HEAD 给出了当前分支的 ref,所以你可以解引用 .git/HEAD,得到实际的当前分支 ref。

all: report.txt

current := $(shell cut -c6- .git/HEAD)

report.txt: .git/${current}
        touch report.txt

请注意,如果您切换分支,您将检测到更改,即使新分支与前一个分支在同一提交上也是如此。

关于git - 从 Makefile 跟踪分支更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24320276/

相关文章:

svn - 在 TFS 中使用补丁文件(补丁文件来自 subversion、git 等)

c - 包括PJSIP-Library并编写makefile

c++ - 简单的 Hook 程序

c++ - 如何为 .cpp 和 .h 文件从变量生成依赖项?

linux - 编辑 CMakeLists.txt 以使用 -fPIC 进行编译

c# - 修改全局系统菜单

git 分支删除 - HOOK

git - git 如何将当前分支推送到另一个远程/源?

git - 如何使用 Git 还原

文件的工作副本与其在另一个分支上的版本之间的 git diff