Wenn Sie -A 1zu den grep-Argumenten hinzufügen, wird die Zeile nach der Konfliktzeile angezeigt, die manchmal mit dem Konflikt zusammenhängt.
Wesley Hartford
4
-P sagt grep Perl regex zu verwenden, ^ = Beginn der Zeichenfolge (=?) Umschließen das Look - Ahead - Muster , das ist {0,6} jeder 0-6 Zeichen und den Buchstaben C, das der Indikator für Konflikte ist.
Pete
5
Was bringt es, den Lookahead-Teil zu verwenden? Konnte nicht '^.{0,6}C'so gut funktionieren?
Hans_meine
2
Um denselben Befehl unter OSX zu verwenden, müssen Sie GNU grep installieren, da das BSD grep nicht über das Perl-Regex-Flag (-P) verfügt
G.Rassovsky
4
Unter Windows ist die Powershell-Version davon(svn status) -Match '^(?=.{0,6}C)'
Scheint unter Windows mit SVN 1.7.8 nicht zu funktionieren. Fehlerprotokoll: svn: E205001: Versuchen Sie 'svn help' für weitere Informationen svn: E205001: Quelle zusammenführen erforderlich
Es ist möglicherweise möglich, svn merge --dryrundie Repository-URL mit allen Revisionen nach der letzten zu verwenden, mit der Sie aktualisiert haben.
Wenn Ihr aktuelles WC beispielsweise auf Revision 147 basiert, könnte dies Folgendes bewirken:
svn merge -r 148:HEAD http://url.to.repo/repo/
Es ist nichts, was ich selbst getan habe, also musst du es selbst versuchen.
Wenn Sie keine Dateien zusammengeführt oder aktualisiert haben, verwenden Sie den folgenden Befehl
svn status --show-updates | grep -P '.*(?=.*M)(?=.*\*).*'
Kurz gesagt
svn st -u | grep -P '.*(?=.*M)(?=.*\*).*'
Details
SVN markiert den Konfliktstatus (C) erst, wenn Sie die Datei (en) mit aktualisieren svn update.
Bis dahin werden die Status wie folgt angezeigt
M - Geändert in lokal
* - Updates / Eingehend von Remote
M und * - Geändert in lokal sowie in Remote - Dies ist ein Konflikt, aber svn hat noch nicht markiert
-A 1
zu den grep-Argumenten hinzufügen, wird die Zeile nach der Konfliktzeile angezeigt, die manchmal mit dem Konflikt zusammenhängt.'^.{0,6}C'
so gut funktionieren?(svn status) -Match '^(?=.{0,6}C)'
Benutze einfach grep!
quelle
Sie könnten versuchen zu
svn merge -r <revision> --dry-run
sehen, was auf diese Weise passiert.quelle
Wenn Sie eine Bestätigung von http://betterthangrep.com/ haben , können Sie Folgendes tun
quelle
Verwenden Sie für Windows PowerShell:
quelle
Wenn Sie bereits zusammengeführt haben, können Sie verwenden
und sehen Sie ein "C" in Großbuchstaben für Konflikte, aber normalerweise sollten Sie solche in Ihrer Arbeitskopie nicht sehen.
quelle
Es ist möglicherweise möglich,
svn merge --dryrun
die Repository-URL mit allen Revisionen nach der letzten zu verwenden, mit der Sie aktualisiert haben.Wenn Ihr aktuelles WC beispielsweise auf Revision 147 basiert, könnte dies Folgendes bewirken:
Es ist nichts, was ich selbst getan habe, also musst du es selbst versuchen.
quelle
Wenn Sie keine Dateien zusammengeführt oder aktualisiert haben, verwenden Sie den folgenden Befehl
svn status --show-updates | grep -P '.*(?=.*M)(?=.*\*).*'
Kurz gesagt
svn st -u | grep -P '.*(?=.*M)(?=.*\*).*'
Details
SVN markiert den Konfliktstatus (C) erst, wenn Sie die Datei (en) mit aktualisieren
svn update
.Bis dahin werden die Status wie folgt angezeigt
M - Geändert in lokal
* - Updates / Eingehend von Remote
M und * - Geändert in lokal sowie in Remote - Dies ist ein Konflikt, aber svn hat noch nicht markiert
quelle
auf Mac
hat den Job gemacht
hier ist der mann für grep:
quelle
^!
ist der reguläre Ausdruck für jede Zeile, die mit beginnt!
. Alle widersprüchlichen Zeilen beginnen mit!