限制 Git 提交日志的字数

原创
2019/07/11 16:37
阅读数 1.5K

大部分情况下你只能找到svn提交日志的字数限制,很少有人限制git提交日志字数。而我用的git是用来对接svn代码服务器的,因为本地git提交的次数比较多而忘记了svn服务器的这个限制,所以最好的办法也是给git提交日志也加上一个hook钩子来限制这个日志字数

这是脚本:

#!/usr/bin/env bash

# Hook to make sure that  commit message line has 8 characters at least

while read line; do
    # Skip comments
    if [ "${line:0:1}" == "#" ]; then
        continue
    fi
    if [ ${#line} -lt 8 ]; then
        echo "Commit messages are limite to 8 characters at least."
        echo "The following commit message has ${#line} characters."
        echo "${line}"
        exit 1
    fi
done < "${1}"

exit 0

将上述脚本保存为 commit-msg 的文件,不带.sh后缀,放入你的git项目的 .git/hooks/ 路径下面,使用 chmod +x 增加权限,然后在git命令行中 commit,如果写的日志字数过少,就会有提示了。

如果你是在命令行中使用上面的git钩子,提交日志少于8个字时就会立即提示,表明可以正常使用。

如果是在SourceTree中使用git提交日志,就没有那么顺利了,你会发现git钩子不起作用。

做了几次尝试之后,发现如果在SourceTree中第一次提交日志时,在日志文本框右上角的 commit options 选择 bypass commit hooks,提交代码,然后再对代码进行修改,提交时日志少于8个字就会有警告了。给我的感觉好像是SourceTree默认不启用 commit hooks ,执行过一次 bypass commit hooks后才开始生效。。。。。

##参考资料

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部