git_commit(路径:“*”,消息:“消息”)
如果没有提交任何内容,此操作将失败。即使没有任何提交,我如何继续执行我的Fastlane脚本?
我正在寻找的可以通过以下两个选项中的任何一个来完成:
git_commit
操作中添加一些参数,这样如果没有任何提交,它就不会崩溃脚本(而是继续)git_commit
。我没有找到任何方法来使用方法1完成此操作,所以我正在寻找第二种方法的实现。
您可以尝试断言状态是干净的,捕获异常,并通过git commit处理它:
begin
ensure_git_status_clean
rescue
git_commit
end
或者,您可以使用sh
动作在shell中执行任何操作
您可以实现一个脚本,告诉您是否存在分阶段更改,然后使用输出来确定是否应该创建提交。
如果存在任何分阶段更改,则以下脚本返回1,否则返回0。
#!/bin/bash
if [[ -n "$(git diff --name-only --cached)" ]]
then
exit 1
else
exit 0
fi
假设您将脚本命名为CheckStagedFiles,则必须将以下内容添加到您的lane:
shouldCommit = sh(".CheckStagedFiles.sh")
if shouldCommit
git_commit(path: "*", message: "message")
end