Ich kenne diesen Befehl:
cvs log -N -w<userid> -d"1 day ago"
Leider wird dadurch ein formatierter Bericht mit vielen Zeilenumbrüchen erstellt, so dass sich der Dateipfad, die Dateiversion und der Kommentartext in separaten Zeilen befinden. Daher ist es schwierig, alle Vorkommnisse von Kommentartexten (z. B. grep) zu untersuchen und die Übereinstimmungen mit Datei / Version zu korrelieren.
(Beachten Sie, dass die Protokollausgabe vollkommen akzeptabel wäre, wenn nur cvs die native Filterung durchführen könnte.)
EDIT: Beispielausgabe. Ein solcher Textblock wird für jede Repository-Datei gemeldet:
%Vor% Die Option -w
scheint mit der Option -S
besser zu funktionieren. Andernfalls gibt es zusätzliche Ergebnisse, die nicht mit der Benutzer-ID in Zusammenhang stehen. Vielleicht kann es jemand erklären.
Damit habe ich vernünftigen Erfolg bekommen, es zu grep zu leiten:
%Vor% Ich leite die Ausgabe in eine Datei um, da das cvs-Protokoll laut ist und ich bin mir nicht sicher, wie ich es leise machen soll. Ich nehme an, eine Alternative besteht darin, den stderr auf /dev/null
umzuleiten.
Meine ersten Gedanken waren, egrep (oder grep -E, glaube ich) zu verwenden, um nach mehreren Mustern zu suchen, wie zum Beispiel:
%Vor%Aber dann realisierte ich, dass Sie intelligenter filtern wollten.
Zu diesem Zweck würde ich awk (oder perl) verwenden, um die Ausgabe Zeile für Zeile zu verarbeiten und eine Echo-Variable zu setzen, wenn Sie einen Abschnitt von Interesse finden; Pseudocode hier:
%Vor%Hier ist was ich getan habe - ein einfaches Java-Skript:
%Vor%Und so habe ich es benutzt:
%Vor%Dieses Kommando und gawk Skript hilft mir, nur den Dateinamen, das Datum und die Kommentarzeile jedes Logeintrages zu finden.
%Vor%Das könnte viel zu übertrieben sein, aber Sie könnten git-cvsimport um den CVS-Verlauf in ein Git-Repository zu importieren und ihn mit den Werkzeugen von Git zu durchsuchen. Sie können nicht nur innerhalb von Commit-Nachrichten nach Text suchen, sondern auch nach Code suchen, der aus Dateien in Ihrem Repository hinzugefügt oder entfernt wurde .
Tags und Links cvs