Проблемы со скриптом пост-фиксации Trac (SyntaxError: неверный синтаксис) - PullRequest
1 голос
/ 07 января 2010

Я установил скрипт пост-фиксации, найденный в http://trac.edgewall.org/browser/trunk/contrib/trac-post-commit-hook, чтобы связать наборы изменений с заявками

Когда я пытаюсь зафиксировать, я получаю следующую ошибку

'post-commit' hook failed with error output: <br> File "/var/www/svn/repo/hooks/trac-post-commit-hook", line 101<br> (options, args) = parser.parse_args(sys.argv[1:])<br> ^ SyntaxError: invalid syntax </p> <p>I'm running Python 2.4.3 on CentOS.</p> <p>I'm not familiar with Python, so I can't really tell whats happening here and no one seems to have had this issue before (according to Google). </p> <p>I was hoping someone here would know what's going on.</p> <p>Thanks in advance.</p> <p>EDIT:</p> <p>If it helps, here is my post-commit script<br></p> <p></p> <p>REPOS="$1"<br> REV="$2"<br></p> <p>LOG='/usr/bin/svnlook log -r $REV $REPOS'<br> AUTHOR='/usr/bin/svnlook author -r $REV $REPOS'<br> TRAC_ENV="/var/www/trac/[xxx]/"<br> TRAC_URL='<a href="http://trac.[xxx].com/" rel="nofollow noreferrer">http://trac.[xxx].com/</a>'<br> <br><br> /usr/bin/python /var/www/svn/repo/hooks/trac-post-commit-hook -p "$TRAC_ENV" -r "$REV" -u "$AUTHOR" -m "$LOG" -s "$TRAC_URL" <br>

Ответы [ 2 ]

3 голосов
/ 07 января 2010

Может быть, у вас есть пробел или табуляция (опции, аргументы)? может быть так.

>>> (options, args) = parser.parse_args(sys.argv[1:])
>>> # this is fine
>>>
>>>  (options, args) = parser.parse_args(sys.argv[1:])
  File "<stdin>", line 1
    (options, args) = parser.parse_args(sys.argv[1:])
    ^
SyntaxError: invalid syntax
>>>
2 голосов
/ 07 января 2010

Вау, это странно. Строка определенно является допустимым синтаксисом, и версия Python также не должна быть проблемой, поскольку в заявлении об авторском праве скрипта указан год выпуска Python 2.4. У вас есть несколько установок Python на вашем компьютере? Если да, можете ли вы проверить, вернул ли /usr/bin/env python правильный?

...