Hallo Flugies,
ich hab ein Verzeichnis (teils mit links) A. Das hab ich nach B kopiert. In B habe ich ein paar Änderungen gemacht. Teils sind files dazugekommen, welche gelöscht (auch binaries und links).
Wie kann ich diese Handarbeit automatisieren und die aus A wieder B machen? Und noch besser wäre, die Änderungen auf ein Verzeichnis C anwenden? Also auch in C sollen wieder Files gelöscht und andere hinzugefügt werden. Es geht also nicht um Änderungen in den Files, sondern nur um ihr löschen bzw hinzufügen.
Ich hab das erst mit diff/patch probiert, aber abgesehen von den Problemen (siehe unten), scheint mir das nicht der richtige Weg, weil das mehr auf Fileinhalte geht.
----
Hab das mal mit diff -Nupr A B > A_2_B.patch bei auch nur einseitig vorhanden binaries kam im Patch aber lediglich ein binary differs an.
also: diff -Nupra A B > A_2_B.patch
Ist zwar unnötig den Inhalt der binaries die verschwinden im Patch zu haben, aber ok.
Leider klappt das mit dem Wiederherstellen nicht so gut:
patch -f -p 0 < A_2_B.patch
(-f wegen der vielen Frage)
Es gibt Probleme wie dieses: File A/usr/lib/libhistory.so.6 is not a regular file -- refusing to patch 1 out of 1 hunk ignored -- saving rejects to file A/usr/lib/libhistory.so.6.rej
Gruß Arno