代码之家  ›  专栏  ›  技术社区  ›  Jay Sidri

trac提交后脚本有问题(syntaxerror:无效语法)

  •  1
  • Jay Sidri  · 技术社区  · 16 年前

    我已经在 http://trac.edgewall.org/browser/trunk/contrib/trac post commit hook 设置了一个提交后脚本,将变更集与票据关联起来

    当我试图提交时,我得到以下错误

    <代码> “提交后”挂钩失败,错误输出:
    文件“/var/www/svn/repo/hooks/trac post commit hook”,第101行
    (选项,参数)=parser.parse_参数(sys.argv[1:])
    ^ 语法错误:无效语法 < /代码>

    我在CentOS上运行python 2.4.3。

    我对python不太熟悉,所以我不知道这里到底发生了什么,而且似乎没有人以前遇到过这个问题(根据google的说法)。

    我希望这里的人能知道发生了什么。

    事先谢谢。

    编辑:

    如果有帮助,这里是我提交后的脚本

    回购=“$1”
    Rev=“$2”

    log='/usr/bin/svnlook log-r$rev$repos'
    author='/usr/bin/svnlook author-r$rev$repos'
    trac_env=“/var/www/trac/[xxx]/”
    trac_url='
    http://trac.[xxx].com/ '

    BR/> /u s r/bin/python/var/www/svn/repo/hook s/trac post commit hook-p“$trac_env”-r“$rev”-u“$author”-m“$log”-s“$trac_url” < BR> 将变更集与票据关联

    当我试图提交时,我得到以下错误

    “提交后”挂钩失败,错误输出为:
    文件“/var/www/svn/repo/hooks/trac post commit hook”,第101行
    (选项,参数)=parser.parse参数(sys.argv[1:)
    ^ 语法错误:无效语法

    我在CentOS上运行python 2.4.3。

    我对python不太熟悉,所以我不知道这里到底发生了什么,而且似乎没有人以前遇到过这个问题(根据google的说法)。

    我希望这里有人知道发生了什么事。

    事先谢谢。

    编辑:

    如果有帮助,这里是我提交后的脚本

    RePOS=“1美元”
    Rev=“2美元”

    日志='/usr/bin/svnlook log-r$rev$repos'
    author='/usr/bin/svnlook author-r$rev$repos'
    trac_env=“/var/www/trac/[xxx]/”
    trac_url='
    http://trac.[xxx].com网站/


    /u s r/bin/python/var/www/svn/repo/hook s/trac post commit hook-p“$trac_env”-r“$rev”-u“$author”-m“$log”-s“$trac_url”

    2 回复  |  直到 16 年前
        1
  •  3
  •   YOU    16 年前

    您以前是否有空格或制表符(选项、参数)?可能是这样。

    >>> (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
  •  2
  •   Simon    16 年前

    哇,真奇怪。该行绝对是有效的语法,而且python版本也不应该是问题,因为脚本的版权声明与中发布python 2.4的年份相同。您的机器上有多个python安装吗?如果是,你能检查一下 /usr/bin/env python 返回正确的?