在SVN中查找使用特定注释签入的文件
在将源代码签入SVN时,我会使用特定的注释。 我想检索为该评论签入的文件列表。 请注意,我不知道修订号。我只知道我登记时所反对的评论 我在尝试各种各样的东西在SVN中查找使用特定注释签入的文件,svn,version-control,tortoisesvn,checkin,Svn,Version Control,Tortoisesvn,Checkin,在将源代码签入SVN时,我会使用特定的注释。 我想检索为该评论签入的文件列表。 请注意,我不知道修订号。我只知道我登记时所反对的评论 我在尝试各种各样的东西 svn log --verbose 请建议。您可以尝试以下脚本。输入参数为搜索词: #!/bin/sh searchWord=$1 if [ ! $searchWord ]; then echo "Usage ..." exit fi IFS=$'\n' commitRecord='' dumpCommit=fal
svn log --verbose
请建议。您可以尝试以下脚本。输入参数为搜索词:
#!/bin/sh
searchWord=$1
if [ ! $searchWord ]; then
echo "Usage ..."
exit
fi
IFS=$'\n'
commitRecord=''
dumpCommit=false
lineCounter=0
for line in `svn log --verbose`; do
lineCounter=$((lineCounter + 1))
commitRecord[$lineCounter]=$line
if [ ${line:1:5} == '-----' ]; then
if $dumpCommit ; then
echo $line
fi
dumpCommit=false
unset commitRecord
fi
if echo $line | grep -qi $searchWord ; then
for line in ${commitRecord[*]}; do
echo $line
done
dumpCommit=true
continue
fi
if $dumpCommit ; then
echo $line
fi
done
如果您至少在使用Subversion 1.8.0(您应该在2013年6月发布),那么您可以使用。从文档中,此命令: 筛选日志消息以仅显示与搜索模式ARG匹配的消息。仅当提供的搜索模式与任何作者、日期、日志消息文本匹配时(除非使用了
--quiet
),或者如果还提供了--verbose
选项,则显示日志消息
该命令支持*
和?
(全局语法)和字符类([abc]
)
请注意,这不会在存储库中执行真正的搜索,而是对返回的日志条目进行筛选。因此,如果您提供修订范围或使用--limit
,则与您的搜索匹配的修订将被忽略