http://qiita.com/7of9/items/e1e151794f80fb9c24fc Ich habe auch versucht, eine integrierte Schätzung der Arbeitszeit zu implementieren, an die ich beim Studium von Python plötzlich gedacht habe.
Erstellen Sie zunächst eine tmp.log-Datei im Git-Repository, das Sie untersuchen möchten.
$ git log --pretty=format:'%h %ad %s' --date=iso > tmp.log
Wenn Sie danach das Skript ausführen, wird tmp.log gelesen und die akkumulierte Zeit angezeigt.
$ ./git_log_analysis.py
Das Anzeigeformat ist wie folgt und 764 in der letzten Zeile ist die akkumulierte Zeit (Minuten).
...
2015-11-13 21:11:06 801 750 # sec, min
2015-11-13 12:53:26 29860 750 # sec, min
2015-11-13 12:44:36 530 758 # sec, min
2015-11-13 12:37:53 403 764 # sec, min
2015-11-13 07:12:08 19545 764 # sec, min
Die Python-Implementierung (Kernteil) von Linemonitor scheint insgesamt (mindestens) 12 Stunden gedauert zu haben.
Bei der Gesamtzeitberechnung wird berücksichtigt, dass 4 Stunden oder länger keine Arbeit geleistet wurde. In meinem Fall verpflichte ich mich nicht länger als 4 Stunden. Der Benutzer sollte diesen Bereich entsprechend ändern.
def calcElapsedTimeInMinutes(diff_sec):
diff_min = diff_sec / 60
diff_hr = diff_min / 60
if diff_hr >= 4:
return 0
else:
return diff_min
Da es sich im Grunde nur um den Unterschied zwischen den beiden Daten und Zeiten handelt, sind zumindest die folgenden Unsicherheiten enthalten
――Ich habe nicht den ganzen Zeitunterschied in die Implementierung einbezogen
v0.2
Es schien mühsam, den Git-Log-Befehl einzeln zu drücken.
Ich erinnerte mich, dass ich einen Befehl ausführte, als ich shutdownButton implementierte, also habe ich in v0.2 tmp.log automatisch erstellt. Beachten Sie, dass tmp.log, wenn es bereits vorhanden ist, überschrieben wird.
Recommended Posts