Make the execute job idempotent and adhere to Chef best practices

As discussed: while you are right the git config command makes sure the setting is only changed when needed, from a Chef point of view it is a dumb command (and thus a system change) that is executed every run. The cleaner way is to write a provider around it which makes full use of the intelligence of the git config command itself. I'll leave that up to you :)

Cheers,

Michael