Frage

Wie erstelle ich einen Zweig in SVN?

War es hilfreich?

Lösung

Die Verzweigung in Subversion wird durch eine sehr, sehr einfache und effiziente Kopierfunktion erleichtert.

Verzweigung und Tagging sind praktisch gleich.Kopieren Sie einfach einen ganzen Ordner im Repository mit dem an eine andere Stelle im Repository svn copy Befehl.

Im Grunde bedeutet dies, dass das Kopieren eines Ordners per Konvention gemeint ist – sei es ein Backup, ein Tag, ein Zweig oder was auch immer.Je nachdem, wie Sie über die Dinge denken möchten (normalerweise abhängig davon, welches SCM-Tool Sie in der Vergangenheit verwendet haben), müssen Sie in Ihrem Repository eine Ordnerstruktur einrichten, die Ihren Stil unterstützt.

Gängige Stile bestehen darin, eine Reihe von Ordnern oben in Ihrem Repository namens „ tags, branches, trunk, usw.- Damit können Sie Ihr Ganzes kopieren trunk (oder Teilmengen) in die tags und/oder branches Ordner.Wenn Sie mehr als ein Projekt haben, möchten Sie möglicherweise diese Art von Struktur für jedes Projekt replizieren:

Es kann eine Weile dauern, sich an das Konzept zu gewöhnen – aber es funktioniert – stellen Sie einfach sicher, dass Sie (und Ihr Team) sich darüber im Klaren sind, welche Konventionen Sie verwenden werden.Es ist auch eine gute Idee, eine gute Namenskonvention zu haben – etwas, das Ihnen sagt, warum der Zweig/das Tag erstellt wurde und ob es noch angemessen ist – denken Sie über Möglichkeiten nach, veraltete Zweige zu archivieren.

Andere Tipps

Erstellen Sie einen neuen Zweig mit svn copy Befehl wie folgt:

$ svn copy svn+ssh://host.example.com/repos/project/trunk \
           svn+ssh://host.example.com/repos/project/branches/NAME_OF_BRANCH \
      -m "Creating a branch of project"

Wenn Ihr Repo über https verfügbar ist, können Sie diesen Befehl zum Verzweigen verwenden ...

svn copy https://host.example.com/repos/project/trunk \
       https://host.example.com/repos/project/branches/branch-name \
  -m "Creating a branch of project"
svn cp /trunk/ /branch/NEW_Branch

Wenn Sie lokale Änderungen im Trunk haben, verwenden Sie Rsync um Änderungen zu synchronisieren

rsync -r -v -p --exclude ".svn" /trunk/ /branch/NEW_Branch

Normalerweise würden Sie es nach svn+ssh://host.example.com/repos/project/branches/mybranch kopieren, damit Sie mehrere Zweige im Repository behalten können, aber Ihre Syntax ist gültig.

Hier einige Ratschläge dazu So richten Sie Ihr Repository-Layout ein.

Angenommen, Sie möchten einen Zweig aus einem Rumpfnamen (als "Test") erstellen und dann verwenden:

svn cp -m "CREATE BRANCH TEST" $svn_url/trunk $svn_url/branches/TEST

Wenn Sie überhaupt vorhaben, Ihre Niederlassung zusammenzulegen, empfehle ich Ihnen dringend, sich Folgendes anzusehen:

Svnmerge.py

Ich habe gehört, dass Subversion 1.5 mehr Zusammenführungsverfolgung integriert, ich habe damit keine Erfahrung.Mein Projekt läuft auf 1.4.x und svnmerge.py ist ein Lebensretter!

Top-Tipp für neue SVN-Benutzer;Dies kann ein wenig dabei helfen, schnell die richtigen URLs zu erhalten.

Laufen svn info um nützliche Informationen über den aktuell ausgecheckten Zweig anzuzeigen.

Die URL sollte (wenn Sie svn im Stammordner ausführen) Ihnen die URL liefern, von der Sie kopieren müssen.

Um zum neu erstellten Zweig zu wechseln, verwenden Sie auch die svn switch Befehl:

svn switch http://my.repo.url/myrepo/branches/newBranchName
  • Erstellen Sie einen neuen Ordner außerhalb Ihres aktuellen Projekts.Sie können ihm einen beliebigen Namen geben.(Beispiel:Sie haben einen Checkout für ein Projekt mit dem Namen „Anpassung“.Und es gibt viele Projekte, wie „Projekt1“, „Projekt2“. … Und Sie möchten einen Zweig von „Projekt1“ erstellen.Öffnen Sie also zunächst die „Anpassung“, klicken Sie mit der rechten Maustaste, erstellen Sie einen neuen Ordner und geben Sie ihm einen Namen: „Project1Branch“).
  • Klicken Sie mit der rechten Maustaste auf „Myproject1“....TortoiseSVN -> Branch/Tag.
  • Wählen Sie eine Arbeitskopie.
  • Öffnen Sie den Browser....Gleich rechts oder parallel auf „Zur URL“.
  • Wählen Sie „Anpassung“. Klicken Sie mit der rechten Maustaste und dann auf „Ordner hinzufügen“.und durchsuchen Sie den Ordner, den Sie erstellt haben.Hier ist es „Project1Branch“.Klicken Sie nun zum Hinzufügen auf die Schaltfläche „OK“.
  • Schauen Sie sich diese neue Bank an.
  • Gehen Sie erneut zu Ihrem Projekt, welchen Zweig Sie erstellen möchten.Klicken Sie mit der rechten Maustaste auf TorotoiseSVN -> Zweig/Tag.Wählen Sie dann die Arbeitskopie aus.Und Sie können die URL als Filialnamen angeben.wie {Ihre IP-Adresse/svn/AAAA/Customization/Project1Branch}.Und Sie können den Namen in der URL festlegen, sodass der Ordner nur mit diesem Namen erstellt wird.Wie {Ihre IP-Adresse/svn/AAAA/Customization/Project1Branch/MyProject1Branch}.
  • Drücken Sie die OK-Taste.Jetzt können Sie die Protokolle sehen ... Ihre Arbeitskopie wird in Ihrer Filiale gespeichert.
  • Jetzt können Sie zur Kasse gehen ... und Ihre Arbeit genießen.:) :)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top