Exportiert Nur die geänderten Dateien aus subversion pflegen Verzeichnis-Struktur
Wenn ich Rechtsklick auf meine lokale Arbeitskopie und wählen Sie Protokoll zeigen. TortoiseSVN zeigt mir den vollständigen Pfad jeder Datei geändert für die revision.
Aus dem tortoiseSVN-Schnittstelle, was ich tun möchte ist Folgendes.
wenn ich mit der rechten klicken Sie auf die Versionsnummer, und wählen Sie exportieren. Ich würde es gerne, um die Dateien zu exportieren, während Sie in Ihre Verzeichnisse.
Ist das möglich?
Um es anders zu sagen, ich will nur exportieren die Dateien, die ich geändert in den letzten commit in einem Ordner auf meiner Festplatte (das ist nicht meine Arbeitskopie ) aber ich will Sie nicht alle in einen Topf geworfen, in das übergeordnete Verzeichnis. Ich möchte, dass Sie kopiert werden-einschließlich Ihrer relativen Pfad.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich weiß, dies ist eine sehr alte Frage, aber die Beantwortung hier wird den Menschen helfen, die Suche auf google, wie mich:
rsync -R
eher alscp --parents
Da dies eines der ersten Ergebnisse auf Google für den Export, es werden nur geänderte Dateien mit SVN, habe ich eine batch-version für Windows. Nicht sehr anspruchsvoll, wie ich selten etwas zu tun, im batch -, aber es sollte den job tun.
Benötigen Sie den svn.exe in Ihrem Pfad für diese zu arbeiten. Auch darauf achten, das nachgestellte Schrägstriche zurück in die Verzeichnis-Variablen.
Dem Linux-Befehl ist ein bisschen kürzer. Entweder die benutzen, die, wie gesehen, in Joe ' s Antwort, oder diese sogar kürzer (gefunden hier):
BASH
Lassen Sie uns sagen, Sie haben einen dev-server mit SVN, aber auf deinen Produktions-server Sie haben keine SVN.
So dass Sie dev und SVN export und upload der exportierten Website-Produktion.
Nun Sie änderungen vornehmen, aber Sie wollen nicht zu rsync/upload gesamte export - nur die änderungen.
Auf dem Dev-server:
( vorausgesetzt, Sie ausgecheckt dev Website mit
svn checkout https://svn.server.com/web/sitename/trunk /path/to/sitename
und unter der Annahme dev site-Dateien werden in KOPF )Dadurch wird eine ZIP-Datei mit der geänderten Datei[s] - in eine intakte Verzeichnisstruktur - von revision 123:KOPF.
Wenn aus irgendeinem Grund Sie nicht möchten, dass KOPF, dann :
( dies setzt die DEV auf die gewünschte revision, packt file[s], dann ups zurück zum KOPF )
svn diff --summarize -r 123:124 https://svn.server.com/web/sitename/trunk | awk '{ print $2 }' | sed -e 's{https://svn.server.com/web/sitename/trunk/{{'
schnappt sich eine Liste der änderungen, D. H.somedir/somefile.ext
und übergibt Sie an den Reißverschluss. Da der Pfad relativ ist, müssen Sie in der Website dev-Verzeichnis. Sie können ausführen, den svn diff-Befehl stand-alone zu sehen, welche Datei[s] enthalten.Nein, es ist nicht möglich. Sie können entweder exportiert das gesamte repository in revision, oder nur die geänderten Dateien mit dem Pfad abgeflacht.