Rastreamento de tempo Git

#!/usr/bin/ruby

command
= '/usr/bin/git --no-pager log --oneline'

ARGV
.each do|a|
if a.match(/^--after/)
command
+= ' ' + a
end
end

hours
= 0
begin
output
= `#{command}`

commits
= output.split("n")
commits
.each do |line|

line
.scan(/t[(.*)]/) do |r|
r
.each { |h| hours += h.to_f }
end

end
print "Total: #{hours}hrsn"
rescue => e
puts e
.message
exit
end

Um script para rastreamento de tempo usando git commits.

  • Salve o script como um executável (chamei de git-tt)
  • Adicione tags às suas mensagens de commit com a quantidade de horas que você gastou, por exemplo. “Funcionalidade foobar implementada t [1.5].”
  • Execute git tt de um repo git para mostrar o total de horas para esse repo.
  • Adicione ‘–after = “2010-03-15″‘ para mostrar o total de confirmações desde a data