Opscode fez uma escolha opinativa para manter o Chef & Git separado, e falei sobre isso em várias ocasiões - talvez alguém não está usando o Git, talvez não deva ser tão ligado ao controle de origem como é, etc.
Considere isso: knife cookbook site install apache2
, por padrão, não vai para o Github, e não para o Community Site onde os livros de receitas são lançados (semelhante aos rubygems).
Mantê-los separados também permite a flexibilidade de várias pessoas trabalhando em um livro de receitas, verificando seu código e, finalmente, quando você estiver pronto, implante-o no servidor chef como uma unidade de código a ser implantada.
Portanto, não há um método integrado para combinar itens 1 e 2.