如何在Makefile中获取输入,实现GitHub代码提交自动化
用Makefile实现GitHub提交自动化(支持自定义提交信息)
直接用下面这个简单的Makefile就能实现需求,包含了输入提交信息、代码提交到GitHub的完整流程:
.PHONY: push push: @echo "=== 启动GitHub提交流程 ===" # 读取用户输入的提交信息 @read -p "请输入提交信息: " COMMIT_MSG; \ # 暂存所有修改文件 git add .; \ # 提交代码,使用用户输入的信息 git commit -m "$$COMMIT_MSG"; \ # 推送到远程仓库(默认是origin的main分支,按需修改) git push origin main; \ echo "=== 提交推送完成 ==="
关键部分说明
.PHONY: push:声明push是伪目标,防止和项目中同名文件冲突,确保每次运行make push都会执行后续命令@read -p ...:通过shell的read命令获取用户输入的提交信息,@符号用来隐藏命令本身的输出,只显示提示文本$$COMMIT_MSG:Makefile中$是特殊字符,需要用$$转义才能把变量传递给shell,确保提交信息能正确传入git commit命令- 如果你的远程分支不是
main(比如旧项目用master),把git push origin main里的main改成你的分支名即可
使用方法
在项目根目录的终端里执行:
make push
然后按照提示输入提交信息,回车后就会自动完成代码暂存、提交、推送的全流程。
内容的提问来源于stack exchange,提问作者Debarka Naskar
相关产品推荐
相关产品推荐

