Wie finde ich die Revisionen durch eine bestimmte Subversion-Benutzer?
Verwenden der Befehl-Linie, würde ich mag, um zu sehen, alle änderungen von einem bestimmten Benutzer. Ist das möglich? Ich habe die Dokumentation für svn log
aber nicht sehen können, wie Sie dies tun.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich kenne keine Möglichkeit, dies zu tun über die Reine Subversion. Aber Sie können es tun mit
sed
:Diese findet jede Instanz der Benutzername, und dann druckt alles bis auf die gestrichelte Linie markiert das Ende eines Datensatzes im log.
Das Suchmuster ist sehr flexibel - Sie können leicht ändern, um die Suche für andere Dinge. Zum Beispiel,
Zurückkehren würde, alle commits im Dezember gemacht (von jedem Autor).
Edit: Wenn Sie nicht wollen, dass die tatsächliche commit-Nachricht, sondern nur die Zusammenfassung von Metadaten, dann können Sie einfach
grep
, in analoger Weise zu William Leara Windows Antwort:Wenn Euch das nichts ausmacht reading log im XML-format, hier ist, wie mit XML Starlet:
Wenn Sie nicht möchten, dass diese Dateien aufgelistet werden, entfernen Sie
--verbose
.Hier ein Beispiel für die Ausgabe ohne Text.
Der einfachste Ansatz ist die Verwendung von Subversion 1.8+ Kommandozeilen-client; unterstützt
--search
und--search-and
Optionen, mit denen Sie filtersvn log
Ausgabe auf display nur Revisionen, die der Suche entsprechen Muster, die Sie angeben.SVNBook 1.8 |
svn log
command-line reference,Subversion 1.8 Release Notes |
svn log
kann in einem filter-Protokoll-Nachrichten basierend auf den Suchbegriffen.Beispielsweise
Suche für Revisionen von Benutzer Sally oder Harry:
Suche für Revisionen von Benutzer Sally auf /foo/bar/helloworld.cpp:
HINWEIS: Sie können auch Die TortoiseSVN Revision Log Dialog Suchvorgänge und Filter.
Windows-version:
Die Ausgabe sieht so aus:
etc.
svn log | grep 'William_Leara'
in Unix. Ich hatte nicht berücksichtigt, dass die OP vielleicht wollen einfach nur die meta-Daten. Diesed
Lösung in meiner Antwort extrahiert die commit-Nachrichten, die möglicherweise oder möglicherweise nicht, was er wollte.Unter Windows mit Hilfe von UnxUtils version von
sed
, ich brauchte, um diese regexps statt, passend zum ---- bei der nächsten start of line: