Por que meu gancho de script Ruby Git é executado com o $ PATH errado?

Estou usando o RVM. Eu escrevi um Gitpre-commit gancho para um projeto:

#!/usr/bin/env ruby

puts RUBY_VERSION
puts `echo $PATH`
exit(1)

que produz isto quando executado pelo Git:

$ git ci -m 'foo'
1.8.7
/usr/libexec/git-core:/usr/bin:/usr/local/heroku/bin:/Users/mgoerlich/.rvm/gems/ruby-2.0.0-p195@global/bin:/Users/mgoerlich/.rvm/rubies/ruby-2.0.0-p195/bin:/Users/mgoerlich/.rvm/bin:/Users/mgoerlich/adt-bundle-mac-x86_64-20130219/sdk/platform-tools:/Users/mgoerlich/adt-bundle-mac-x86_64-20130219/sdk/tools:/usr/local/bin:/usr/local/sbin:/Users/mgoerlich/.dotfiles/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/bin/core_perl:/Users/mgoerlich/bin:/usr/local/share/npm/bin:/usr/local/share/npm/bin

Parece rodar com a versão errada do Ruby porque$PATH não é o mesmo que em bash ou zsh ou sh. Parece que o git está manipulando$PATH. Quando executado manualmente, eu recebo isso:

$ .git/hooks/pre-commit
2.0.0
/usr/local/heroku/bin:/Users/mgoerlich/.rvm/gems/ruby-2.0.0-p195@global/bin:/Users/mgoerlich/.rvm/rubies/ruby-2.0.0-p195/bin:/Users/mgoerlich/.rvm/bin:/Users/mgoerlich/adt-bundle-mac-x86_64-20130219/sdk/platform-tools:/Users/mgoerlich/adt-bundle-mac-x86_64-20130219/sdk/tools:/usr/local/bin:/usr/local/sbin:/Users/mgoerlich/.dotfiles/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/bin/core_perl:/Users/mgoerlich/bin:/usr/local/share/npm/bin:/usr/local/share/npm/bin

Na saída do gancho de confirmação, há dois caminhos prefixados, um deles/usr/bin onde o executável do sistema Ruby é colocado.

Isso é um comportamento conhecido? Posso manipular isso de alguma forma? Eu sei que eu poderia especificar o caminho completo para a versão correta do Ruby no shebang, mas isso não é o que eu quero.

questionAnswers(3)

yourAnswerToTheQuestion