Frage

Ich bin mit Eclipse / subclipse für die Entwicklung. Ich habe auch die TortoiseSVN.

Ich versuche, eine CVS-Repository zu verschieben. Die alte CVS-Repository hatte ein einzelnes Projekt. Wir wollen einige der Projekte reogranize ihre eigene Entwicklung Ströme haben und sollten separat verwaltet werden.

lief ich die Standard-Voll Bewegung des Repository mit cvs2svn und hatte keine Probleme.

Ich mag die Projekte in Subversion-Repository restrukturieren, so dass nach dem cvs2svn, ich versuchte, eine SVN-Bewegung zu tun und tat die Umstrukturierung. Ich konnte erfolgreich den Schritt tun, wieder keine Probleme.

ich das Projekt in Eclipse Check-out, und wählen Sie eine Datei in einem der bewegt Projekte. Es ist egal scheinbar nicht vorspringen. Wenn ich eine Update-Version in Eclipse zu tun, und eine Version in der Geschichte der Datei wählen zu aktualisieren, wird die Datei von meinem Dateisystem gelöscht, aber die ältere Version kommt nie nach unten. Die Datei wird einfach weg.

Ich habe das gleiche Problem mit TortoiseSVN, so nehme ich an, dass es keine subclipse Thema ist.

Das Interessante daran ist, dass, wenn ich ein svn move eines Projekts zurück in seine ursprüngliche Position, wo es zunächst umgewandelt wurde, und die gleichen Schritte folgen, ich habe keine Probleme, die Update Version funktioniert wie erwartet.

Also, auf meine Frage (n):

  1. Habe ich etwas falsch gemacht während der cvs2svn Bewegung, die mich von erfolgreich reorganisiert meiner Subversion-Repository ausschließen würde?
  2. Gibt es eine bessere Art und Weise zu tun, was ich tun möchte?
War es hilfreich?

Lösung

Wo ich arbeite, haben wir beschlossen, die Dateien in SVN nach dem Import von CVS zu bewegen. CVS hat mit bewegter Geschichte Fähigkeiten beschränkt, während die SVN-Repository kann „rückgängig“ zu sehen, wie es zu jeder Zeit aussah. Auch durch diese Weise wurde die Entscheidung getroffen, das war wichtiger, eine Geschichte aller Änderungen und bewegt sich zu halten.

Was wir getan haben, ist das Modul von CVS in SVN bewegen, wie ist. Dann den Repository Browser, verschieben Sie alle Dateien nach Bedarf, vor einem Check-out.

Nun, das geht nicht Ihr Problem, wenn Sie eine einzelne Datei auf eine ältere Version aktualisieren, die sie verschwinden. Wir haben beschlossen, damit zu leben, weil wir versuchen, aus einer Datei-zentrierte Sicht des Repository (CVS) auf einen Snapshot-basierten eine wegzubewegen. Also, wenn wir wieder auf eine ältere Version gehen, müssen wir das gesamte Projekt aktualisieren. Wenn Sie nur an der diff Geschichte suchen, die gut von TortoiseSVN funktioniert, wenn wir bewegen / Umbenennungen ermöglichen.

Andere Tipps

  1. Nein, du hast nichts falsch gemacht
  2. Ja. Sie sollten Ihre CVS Repository vor reorganisieren Sie importieren es über cvs2svn

Grund für dieses Symptom:

Sie müssen immer einen Ordner überprüfen. Wenn Sie zu einer früheren Version aktualisieren, dieser Ordner möglicherweise nicht vorhanden (der Ordner wurde verschoben), dann wird Subversion seinen Inhalt löschen. Umbenennung in Subversion wird immer als entfernen implementiert und hinzufügen. So haben Sie eine dünne Verbindung zwischen Dateien, aber es ist nur für die Geschichte dieser Datei. Wenn Sie das neue Layout sehen möchten, müssen Sie einen Ordner zur Kasse, der sowohl: Ziel- und Quellordner. Als Sie in der Lage sein, die Bewegung dieses Ordners zu „sehen“, aber wenn Sie nur einen des Ordners in Ihrer Kasse haben, wird der Ordner nur verschwinden, und Sie müssen eine andere URL (entweder Ziel oder Quelle) zur Kasse.

So Es ist einfacher, Ihre Projekte in CVS restrukturieren und dann migrieren. Nachteil:. Sie werden keine Geschichte Ihrer Umstrukturierung haben, und Sie sind nicht in der Lage zu bauen / kompilieren vorherige Versionen (die in CVS erstellt wurden)

ich mit Peter Parker sich einig, dass es einfach und vorteilhaft ist es, die Projekte in CVS vor der Umwandlung zu Subversion, , wenn zu reorganisieren, was wollen Sie tun reorganisieren Ordner und Dateien innerhalb einzelner Projekte.

Aber wenn Sie das Layout der Projekte reorganisieren möchten sich (das heißt, wo ein Projekt zum anderen lebt relativ), können Sie dies als Teil der cvs2svn Umwandlung leicht zu tun. Wenn Sie das tun ein Multi Umwandlung können Sie angeben, wo cvs2svn den Stamm Äste, legen Sie sollten und Tags Verzeichnisse für jedes der Projekte. legen Sie sie einfach nach Ihren neuen Projektorganisation gewünscht und dann sollten Sie kein Problem mit dem Repository arbeiten, haben alle üblichen Werkzeuge.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top