Chef git资源总是失败,“STDERR:致命:无法强制更新当前分支”

时间:2016-02-18 01:00:38

标签: git chef

作为我的Chef配方中的一个步骤,我需要从github检出一些代码。但每次执行chef-client时,它都会失败并显示以下输出:

Mixlib::ShellOut::ShellCommandFailed: Expected process to exit with [0], but received '128'
---- Begin output of git branch -f master 276d62661678d9249d7cafbc7dbbc50a94d212bc ----
STDOUT: 
STDERR: fatal: Cannot force update the current branch.
---- End output of git branch -f master 276d62661678d9249d7cafbc7dbbc50a94d212bc ----
Ran git branch -f master 276d62661678d9249d7cafbc7dbbc50a94d212bc returned 128
[2016-02-18T00:46:11+00:00] FATAL: Chef::Exceptions::ChildConvergeError: Chef run process exited unsuccessfully (exit code 1)

我尝试将资源操作更改为:sync to:checkout 我还尝试在运行配方之前删除源文件夹。

食谱代码:

git "/tmp/node_exporter" do
    repository 'https://github.com/prometheus/node_exporter.git'
    checkout_branch 'master'
    action :sync
end

回购似乎确实被下载了,那么这笔交易是什么?为什么我会收到此错误?

1 个答案:

答案 0 :(得分:2)

您想要阅读

checkout_branch

{{1}}是一个不同的东西,是一个超级先进的功能,你不需要经常触摸。