zoukankan      html  css  js  c++  java
  • VisualSVN设置提交时必须输入log信息

    在别人的基础上修改的:

    自己在Windows上用VisualSVN搭了个服务器,默认提交代码是可以不填任何信息,这可不是我所期望的,于是找到了下面的解决方案:

    在VisualSVN的管理控制台中可以设置这些规则,这些规则在特定的时机触发,其中Commit代码之前检查是否填写了log信息,我们可以在pre-commit时进行。

    设置方法:
    1、打开VisualSVN管理控制台
    2、右键你要设置的代码仓库
    3、所有任务-》Manage Hooks……
    4、编辑“Pre-commit hook"

    其实这个编辑对应的是在你的代码仓库目录下的Hook子目录生成了一个.cmd的文件,我们自己修改这个文件就可以了,不需要通过界面修改。

    在hook目录有一些模板,但模板用的是linux的命令,把模板的后缀名修改成cmd并不能正确执行,所以我们需要符合Windows的Hook脚本,我测试了两个,一个是纯DOS命令,一个是需要perl,都测试OK,还有一个pytyon的版本我就没有测试了,具体可以参考我最后列出来的参考文档。

    1、纯Windows DOS命令

    只需要一个文件就可以:pre-commit.cmd

    @echo off
    ::    
    :: Stops commits that have empty log messages.
    ::

    @echo off

    set svnlook="D:/Program Files/VisualSVN Server/bin/svnlook.exe"
    setlocal

    rem Subversion sends through the path to the repository and transaction id
    set REPOS=%1
    set TXN=%2

    rem check for an empty log message
    %svnlook% log %REPOS% -t %TXN% | findstr . > nul
    if %errorlevel% gtr 0 (goto err) else exit 0

    :err
    echo. 1>&2
    echo Your commit has been blocked because you didn't give any log message 1>&2
    echo Please write a log message describing the purpose of your changes and 1>&2
    echo then try committing again. -- Thank you 1>&2
    exit 1

  • 相关阅读:
    View载入具体解释
    七、备忘录模式Memento(行为型模式)
    排序算法之直接插入排序
    IOS
    Matlab得到二值图像中最大连通区域
    MVC模式利用xib文件定制collectionCell
    五大算法思想—贪心算法
    jQuery鼠标悬停显示提示信息窗体
    J2EE基础总结(5)——EJB
    iOS 打开扬声器以及插入耳机的操作
  • 原文地址:https://www.cnblogs.com/lancidie/p/3142001.html
Copyright © 2011-2022 走看看