Назад | Перейти на главную страницу

установка PATH для Git (не для меня)

Я использую OSX 10.6.5 с Git 1.7.1

У меня git установлен в нестандартном месте (хотя это действительно должно быть стандартом для Mac ;-) в /Library/Frameworks/Git.framework. Мой собственный PATH настроен нормально, git работает нормально, пока ... я не установил хук предварительной фиксации с помощью скрипта Ruby:

$ git commit -m "added some Yard documentation"
.git/hooks/pre-commit: line 1: #!/usr/bin/env: No such file or directory

Pre-commit.sample работает нормально, поэтому кажется, что git не может найти / usr / bin / env или что-то еще, поскольку я пробовал передать его напрямую на ruby ​​и т. Д. Просто / bin / sh в порядке.

Итак, откуда Git берет его PATH? потому что он не использует мой, иначе этого бы не произошло. И, что ближе к делу, как мне заставить его видеть / usr / bin / env?

Я уже тестировал скрипт ruby, он работает.


Просто добавлю:

$ cat /etc/paths                    
/usr/bin
/bin
/usr/sbin
/sbin
/usr/local/bin

$ cat /etc/paths.d/git
/Library/Frameworks/Git.framework/Programs

Первые несколько строк скрипта Ruby (который запускается через ./pre-commit или ruby ​​pre-commit)

#!/usr/bin/env ruby -wKU

class String
  def expand_path
    File.expand_path self
  end

  def parent_dir
    File.dirname self.expand_path
  end
end

Файл был каким-то образом поврежден с того момента, как я скопировал его в .git / hooks, новый файл с тем же кодом исправил его. Большое спасибо @Redmumba и @Dennis Williamson за то, что сообщили мне, что я искал не в том месте.