Subversion pre-commit hooks


pre-commit内容如下

#!/bin/sh

REPOS="$1"
TXN="$2"

# Make sure that the log message contains some text.
SVNLOOK=/usr/bin/svnlook
LOGMSG=`$SVNLOOK log -t "$TXN" "$REPOS" | wc -c`

if [ "$LOGMSG" -lt 5 ];
then
  echo -e "***** Comment must be at least 5 characters. *****" 1>&2
  exit 1
fi# All checks passed, so allow the commit.
exit 0

添加完成之后需要修改文件具备执行权限,否则会提示

svn: Commit blocked by pre-commit hook (exit code 255) with no output.
Advertisements

TortoiseSVN使用svn+ssh协议连接服务器时重复提示输入密码


当使用svn+ssh协议连接svn服务器时,ssh会提示请求认证,由于不是svn客户端程序来完成ssh的认证,所以不会缓存密码。
而svn客户端通常会建立多个版本库的连接,当密码没有缓存的时候,就会重复不断的提示输入密码。

解决办法是在TortoiseSVN的网络设置里指定SSH客户端使用TortoisePlink.exe并增加-pw password参数和-l username参数。

最终的命令行如下:
“C:Program Files\TortoiseSVN\bin\TortoisePlink.exe” -pw password -l xieshaohu

或者考虑其他的SSH密码缓存工具,在Eclipse的SSH连接就会自动缓存密码,所以没有这样的问题。