Warum ist patch Ablehnung meines patch-Datei auf eine SVN Arbeitskopie?
Habe ich ein patchfile wie diese:
Index: dir/file.xml
===================================================================
--- dir/file.xml (revision 178)
+++ dir/file.xml (working copy)
@@ -7,7 +7,7 @@
<markup>
- <markup />
+ <markup></markup>
<markup>
<markup>
@@ -20,6 +20,7 @@
<markup>
<markup>
+ <tag>
<markup>
Anwenden, um die SVN-Arbeitskopie, ich verzweigt es mit:
$ svn copy -r 178 trunk/component/dir branches/mybranch
Dann habe ich versucht
$ cd branches/mybranch
$ ls -R
./dir:
file.xml
$ patch -p0 -i ~/patchfile.patch
aber SVN Ausgabe
(Stripping trailing CRs from patch.)
patching file dir/file.xml
Hunk #1 FAILED at 7.
Hunk #2 FAILED at 20.
2 out of 2 hunks FAILED -- saving rejects to file dir/file.xml.rej
für jede Datei?
Was könnte der Grund SVN zur Ablehnung der patch??? Ich bin auf einem UNIX-Rechner, aber patch und repository haben Windows-line-endings...
Danke für die Hilfe!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den
dos2unix
Tipp war nicht schlecht, aber nicht das problem lösen, wie vorgeschlagen.Was ich Tat, um den eigentlich patch alle Dateien:
Also im Grunde
patch
zu haben scheint ein problem bei der VerarbeitungCR/LF
Linien unter Unix. KonvertierenLF
, dann patch und konvertieren es zurück nach patchen geholfen.Credits Stefan.
könnten Sie versuchen, den dos2unix tool auf die patch-Datei. Konvertieren Sie die Linie enden.
Bearbeitet:
So haben wir festgestellt, dass
patch
ist nicht ein SVN-tool. SVN hat keinen direkten Einfluss auf diese, es sei denn, es erstellt die patch-Datei nicht korrekt.Sind Sie sicher, dass das patchfile erstellt wurde, aus dem Stamm? Wenn dem so ist, Ihre Kopie sollte identisch sein zu dem einen, der patch wurde auf der Grundlage, so es sollte keinen Grund zu Versagen. Die einzige Schlussfolgerung die ich mir denken kann ist, dass es etwas falsch mit der patch-Datei; es passt nicht zu Ihrer Datei.
Bestätigen, dass dir/file.xml in Ihrer Arbeitskopie wirklich enthält
ab Zeile 7. (Ich gehe davon aus, dass der code in deiner Frage-ist nur eine bearbeitete Kopie sowieso, denn sollte es werden 7 Zeilen, nicht 4.) Das heißt, ist der Inhalt der Datei mit dem Inhalt des Patches? Achten Sie insbesondere auf die Abstände und Zeilenenden. Wenn es funktioniert, dann sollte es keinen Grund, warum der patch würde scheitern, der Brocken.
dir
ist eigentlich in meinem Zweig. Versuchenpatch -p[N]
hat einen Fehler zurück, wiefile not found
oder ähnliches. Haben Sie einen Blick auf meine edits. Danke!