Verlieren SVN-Geschichte auf die Dateien während der Umgestaltung
Während einige refactoring, ich bin bewegt, um die Dateien. Offensichtlich SVN sieht das wie das löschen der Datei und ein neues zu erstellen, da die IDE nicht auslösen SVN umbenennen/verschieben Bedienung. Allerdings dachte ich, dass der SVN-server wäre klug genug, zu erkennen, doch ist dies nicht beweisen der Fall zu sein... nicht die ganze Zeit sowieso. Ich bin mit Tortoise SVN und ich bin deaktivieren Sie die "stop on copy/rename" - button.
Ist dies zu erwarten? Gibt es einen Weg um Sie herum? Soll ich verschieben Dateien mit Tortoise SVN-shell-Befehle anstatt der IDE tun, eine normale Datei verschieben?
Außerdem ist es möglich manuell zu erzwingen SVN zum verknüpfen von zwei Dateien die gleiche Person, wenn Sie es nicht wissen? Wie sagen Sie "/com/john/test.tct ist das gleiche wie /com/john/test/file.txt"?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Den SVN Weg, dies zu tun ist eigentlich um SVN umbenennen der Datei (
svn move
oder mit TortoiseSVN "Umbenennen"). Allerdings, wenn Sie absolut muss haben einige externe Tools ausführen umbenennen, können Sie verwenden Sie TortoiseSVN zur Reparatur der Verschiebevorgang. Im folgenden wird Ihnen sagen, SVN, dass die neue Datei ist eigentlich die umbenannte alte:Anmerkung: ich Schreibe dies aus dem Gedächtnis. Es ist vielleicht nicht ganz korrekt. Und möglicherweise gibt es andere Möglichkeiten, dies zu tun (wie die Markierung der Dateien im explorer).
Wenn Sie bereits verloren, die Geschichte auf eine Datei, wo Sie es versäumen schlecht, Sie könnte wieder zu beleben, die alte Datei (Sie tun dies, indem
svn copy
ing eine alte revision version in seinen alten Platz), verbindet die neue Datei ist die Geschichte hinein, dann löschen Sie die neue Datei, undsvn move
der alten Datei in die neue Datei name.svn move
, aber ich habe nie versucht, wassvn move source target
tut, wennsource
bereits umbenannttarget
, so könnte es komplizierter als das. Ich weiß es nicht.Können Sie installieren Sie den (kostenlosen) visual studio-add-in AnkhSVN. Dies wird verfolgen Sie Ihre Datei-Umbenennungen und Sie verlieren nicht die Historie in subversion.
Datei benennt verfolgt werden, indem der subversion-client. Wenn Sie Dateien umbenennen, ohne mithilfe der subversion-client (mit windows explorer oder visual studio solution explorer anstelle des TortoiseSVN oder AnkhSVN), dann subversion nicht erkennen, die rename-operation (nur eine löschen-und eine add-operation).
BTW: mit AnkhSVN gibt Sie einige andere Vorteile, wie zum Beispiel die Anzeige der subversion status von Dateien direkt im Projektmappen-explorer.
Alternativ gibt es auch VisualSVN, die vergleichbar ist mit AnkhSVN, aber kommerziell ist.
Schildkröte standardmäßig Halt auf kopieren, wenn die Anzeige der Protokolle.
Wenn Sie die Markierung für dieses Kontrollkästchen auf der log-viewer, dann werden Sie in der Lage zu sehen, die gesamte Geschichte der Dateien/Verzeichnisse.