使用来自appveyor中父级的提交详细信息提交子模块

时间:2017-01-18 14:58:37

标签: git powershell git-submodules appveyor

在Appveyor构建中,我尝试使用父repo中的提交详细信息提交子模块,如下所示:

git commit -m $(git --git-dir=../.git log -1 --oneline)

我这样做的原因是因为我有一个静态站点生成器存储库,它将静态内容构建到GitHub页面子模块中,当父repo的更改被PR到主分支中时,静态内容是自动构建并推送到GitHub页面子模块库。

无论如何,这在PowerShell(使用posh-git)本地工作,但在Appveyor中我得到以下内容:

git commit -m $(git --git-dir=../.git log -1 --oneline)
error: unknown option `git-dir=../.git'
usage: git commit [<options>] [--] <pathspec>...

有人可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:0)

您可以在git提交消息中使用$ ENV:APPVEYOR_REPO_COMMIT_MESSAGE。

e.g。

git commit -m "'$ENV:APPVEYOR_REPO_COMMIT_MESSAGE'"

这假设您的父级仓库是触发构建的仓库。

您可以使用的所有appveyor环境变量列表:https://www.appveyor.com/docs/environment-variables/