On Thu, 13 Nov 2003, Shapira, Yoav wrote:
>
> Howdy,
> Actually, I'm curious to know how you obtained this list: some script
> with mixed CVS commands? I'd like to come up with similar lists for
> other modules where I'm a committer. I *know* for example that tomcat
> hasn't had more than 10 active committers during the past year even
> though there are 64 on the page you cited.
I've been playing with some ruby scripting to do this and the
jakarta-committers.html report, but shell and system commands do most of
it.
In particular:
cvs log -d "2002/11/13<2003/12/21" | grep " state: "
gives you the date and name of all changes to the repository for a given
date range. A little regular expression matching on that will give you
the names (or at least user ids). E.g., this script will give you a list
of the unique accounts that have made commits in the past year:
#!/usr/bin/ruby
@tempFile = "log.tmp"
@cmnd = "cvs -d log -d \"2002/11/13<2003/12/31\" | grep \" state:\" > [EMAIL
PROTECTED]"
system("[EMAIL PROTECTED]")
people = Array.new
File.open(@tempFile,"r") do |f|
f.each_line do |line|
matches = / author: ([^;]*); /.match(line)
person = matches[1].strip
people.push(person) if not people.include?(person)
end
end
File.chmod(0644,@tempFile)
File.delete(@tempFile)
people.sort!
puts people
I just diff'ed that list with a list of commiters (cut and pasted from the
jakarta-committers.html page) to find out who's not on that list.
> Yoav Shapira
> Millennium ChemInformatics
- Rod <http://radio.weblogs.com/0122027/>
---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]