gpt4 book ai didi

svn - post-commit-hook.bat (Windows+VisualSVN Server +Trac 0.12) 从提交中关闭票证

转载 作者:行者123 更新时间:2023-12-04 12:26:57 26 4
gpt4 key购买 nike

Windows + VisualSVN 服务器 + Trac 0.12

我想,当提交文本有“close #2”(或其他命令,都一样)时,工单会自动关闭

最佳答案

好吧,我的 friend ,你很幸运,因为我终于想出了如何做到这一点。我的配置和你一样,Windows + VisualSVN + Trac。这是我从网上的一堆地方和我的经验中收集和整理的。我们开始吧。

  1. 安装 VisualSVN。

  2. 创建(导入...)您的存储库。只需确保它存在并与 VisualSVN 一起正常工作。我们将把您的项目称为 TheProject。并说它位于 PathToSVN这意味着如果项目在 C:\SVN\TheProject 中。那么PathToSVN就是C:\SVN

  3. 如果您使用 Subversion 身份验证,请确保您有至少一个用户

  4. 从以下地址下载 VisualSVN Trac 插件:http://www.visualsvn.com/files/VisualSVN-Server-2.5.4.28066-Trac-0.12.3.zip .
    注意检查http://www.visualsvn.com/server/trac/如果有更新的版本,请返回并按照此处的说明进行操作。不是那里的那些。

  5. 将其解压缩到 %VISUALSVN_SERVER% 文件夹(您的 VisualSVN 安装文件夹)

  6. 在某处为您创建一个文件夹 Trac。例如C:\Trac 或 D:\Trac。我们将其称为PathToTrac\

  7. 允许“完全控制”访问内置网络服务帐户(或用于运行 VisualSVN 服务器服务的其他帐户)的 PathToTrac\ 文件夹.

  8. 打开命令提示符并执行命令

    "%VISUALSVN_SERVER%trac\trac-admin.bat"PathToTrac\TheProject initenv

    使用默认设置。只需按回车键回答所有问题。

  9. 执行以下命令将 TheProject Subversion 存储库添加到 Trac:

    "%VISUALSVN_SERVER%trac\trac-admin.bat"PathToTrac\TheProject 存储库添加 TheProject PathToSVN\Project svn

  10. 如果你还没有python,添加系统变量:PYTHONHOME=%VISUALSVN_SERVER%trac\python

    只需确保 PYTHONHOME 指向我们可以找到 python 的地方。 并注意路径尽头的空间。 Windows 不喜欢它。

  11. 如果您使用 Subversion 身份验证,请将以下文本添加到文件 %VISUALSVN_SERVER%conf\httpd-custom.conf:

    LoadModule python_module "trac/python/mod_python_so.pyd"
    LoadModule authz_user_module bin/mod_authz_user.so
    <Location /trac>
    SetHandler mod_python
    PythonInterpreter main_interpreter
    PythonHandler trac.web.modpython_frontend
    PythonOption TracEnvParentDir PathToTrac
    PythonOption TracUriRoot /trac

    AuthName "Trac"
    AuthType Basic
    AuthBasicProvider file
    AuthUserFile "PathToSVN/htpasswd"

    Require valid-user
    </Location>

如果您使用 Windows 身份验证,或者此文本:

    LoadModule python_module "trac/python/mod_python_so.pyd"
LoadModule authz_user_module bin/mod_authz_user.so
<Location /trac>
SetHandler mod_python
PythonInterpreter main_interpreter
PythonHandler trac.web.modpython_frontend
PythonOption TracEnvParentDir PathToTrac
PythonOption TracUriRoot /trac

AuthName "Trac"
AuthType VisualSVN

# Set the option's value to on if Windows Basic Authentication
# is enabled, otherwise set it to off.
AuthnVisualSVNBasic on

# Set the option's value to on if Windows Integrated Authentication
# (available in the Enterprise Edition) is enabled, otherwise set it to off.
AuthnVisualSVNIntegrated on

require valid-user
</Location>

确保用正确的路径替换 PathToSVN 和 PathToTrac。在文中

  1. 重新启动 VisualSVN 服务器。记下服务器监听的端口。

  2. 打开“http://localhost:port/trac/” 如果您可以看到存储库的 Trac,那么您就差不多完成了。否则返回并检查是否遗漏了什么。

  3. 转到您的 SVN 目录,然后转到您的项目。 PathToSVN\TheProject。例如C:\SVN\FirstProject。你会发现一个文件夹名称hooks。在该文件夹中,您会找到一个名为 post-commit.cmd 的文件。如果不存在,则创建它。

  4. 将其添加到 post-commit.cmd(只需使用文本编辑器打开它)并保存。

    @set PATH=%PYTHONHOME%;%PATH%

    @set REPOS="%1"
    @set REV="%2"
    @set TRAC_ENV="PathToTrac\TheProject"

    @for /F %%A in ('svnlook author -r "%REV%" %1') do set AUTHOR=%%A
    @for /F "delims==" %%B in ('svnlook log -r "%REV%" %1') do set LOG=%%B

    @call "%VISUALSVN_SERVER%trac\python\python.exe" "PathToSVN\TheProject\hooks\trac-post-commit-hook" -p "%TRAC_ENV%" -r "%REV%" -u "%AUTHOR%" -m "%LOG%"
  5. http://trac.edgewall.org/attachment/wiki/TracMultipleProjects/ComprehensiveSolution/trac-post-commit-hook 下载 trac-post-commit-hook 文件.只需转到页面底部,然后单击下载原件。将其保存在 PathToSVN\TheProject\hooks 目录中。它应该被命名为 trac-post-commit-hook 没有扩展名。

  6. 现在转到 PathToTrac\TheProject\conf 目录并打开文件 trac.ini。搜索 repository_dir。将路径添加到您的存储库中,因为它的值(value)例如

     repository_dir = PathToSVN\TheProject
  7. 大功告成!!!

  8. 现在您可以直接从提交中关闭或引用票证,例如修复 #1、关闭 #1 ...阅读 trac-post-commit-hook 文件中的评论

关于svn - post-commit-hook.bat (Windows+VisualSVN Server +Trac 0.12) 从提交中关闭票证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13397294/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com