So,
Я написал простой git-hooks для предварительной отправки, который отлично работает на Linux или Mac, но не работает на Windows.
Сценарий: пытается сопоставить сообщение коммита с регулярным выражением и должен вернуть 0, если совпадает, или выйти.
Судя по статьям, которые я читал, говорят, что крючок должен просто работать.
Команда:
if [[ "$message" =~ "$regular_expression" ]];
Ошибка:
.git/hooks/pre-push: line 6: conditional binary operator expected
.git/hooks/pre-push: line 6: syntax error near `=~'
.git/hooks/pre-push: line 6: ` if [[ "$message" =~ "$regular_expression" ]]; then'
Так что, по-видимому, он не работает на "[[" и "]]".
Теперь я также попытался удалить двойные скобки и оставить только одну.
Команда:
if [ "$message" =~ "$regular_expression" ];
Ошибка:
.git/hooks/pre-push: line 6: [: =~: binary operator expected
This message is flawed: TRY-1 Sample
Кто-нибудь знает, как решить эту проблему?
#!/bin/bash? (и посмотреть, сохраняется ли ошибка) - person VonC   schedule 02.06.2015