Antworten:
Wenn Sie unter Linux nur die Konflikte sehen möchten, leiten Sie den Status über grep weiter.
svn status | grep -P '^(?=.{0,6}C)'
'^.{0,6}C'
so gut funktionieren?
(svn status) -Match '^(?=.{0,6}C)'
Benutze einfach grep!
svn st | grep '^C'
Sie könnten versuchen zu svn merge -r <revision> --dry-run
sehen, was auf diese Weise passiert.
Wenn Sie eine Bestätigung von http://betterthangrep.com/ haben , können Sie Folgendes tun
svn st | ack '^C'
Wenn Sie bereits zusammengeführt haben, können Sie verwenden
svn status
und sehen Sie ein "C" in Großbuchstaben für Konflikte, aber normalerweise sollten Sie solche in Ihrer Arbeitskopie nicht sehen.
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:
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 | | | 23246 file1 |
+---+------+---------------+---------------+
| | | * | 23233 file2 |
+---+------+---------------+---------------+
| M | * | 23233 file3 | |
+---+------+---------------+---------------+
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
auf Mac
$ svn status | grep -e '^!'
hat den Job gemacht
hier ist der mann für grep:
Verwendung: grep [-abcDEFGHhIiJLlmnOoqRSsUVvwxZ] [-A num] [-B num] [-C [num]] [-e Muster] [-f Datei] [--binary-files = value] [--color = when] [--context [= num]] [--directories = action] [--label] [--line-buffered] [--null] [pattern] [file ...]
^!
ist der reguläre Ausdruck für jede Zeile, die mit beginnt !
. Alle widersprüchlichen Zeilen beginnen mit!
-A 1
zu den grep-Argumenten hinzufügen, wird die Zeile nach der Konfliktzeile angezeigt, die manchmal mit dem Konflikt zusammenhängt.