Wie erstelle ich eine Niederlassung in SVN?

stimmen
570

Wie erstelle ich eine Niederlassung in SVN?

Veröffentlicht am 05/08/2008 um 10:25
quelle vom benutzer
In anderen Sprachen...                            


10 antworten

stimmen
569

Subversion macht es einfach (einige denken, zu einfach) eine Niederlassung mit dem Befehl svn copy zu erstellen.

$ 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"
Beantwortet am 05/08/2008 um 10:25
quelle vom benutzer

stimmen
315

Branching in Subversion wird von einer sehr, sehr leicht und effizient Kopierfunktion erleichtert.

Und Tagging - Branching effektiv gleich sind . Kopieren Sie einfach einen ganzen Ordner im Repository irgendwo anders im Repository unter Verwendung des svn copyBefehls.

Grundsätzlich bedeutet dies, dass es durch Konvention ist es, was einen Ordner zu kopieren bedeutet - ob eine Sicherung, Tag, Zweig oder whater sein. Je nachdem, wie Sie die Dinge denken (je normalerweise auf welcher SCM Werkzeug, das Sie in der Vergangenheit verwendet haben) benötigen Sie eine Ordnerstruktur in Ihrem Repository einzurichten, um Ihren Stil zu unterstützen.

Häufige Arten sind eine Reihe von Ordnern an der Spitze Ihres Repository haben genannt tags, branches, trunkusw. - , dass Sie Ihre ganze kopieren kann trunk(oder Untergruppen) in den tagsund / oder branchesOrdner. Wenn Sie mehr als ein Projekt haben könnten Sie diese Art von Struktur unter jedem Projekt replizieren mögen:

Es kann eine Weile dauern, bis an das Konzept zu gewöhnen - aber es funktioniert - so stellen Sie sicher, dass Sie (und Ihr Team) auf den Konventionen klar sind, die Sie verwenden möchten. Es ist auch eine gute Idee, eine gute Namenskonvention haben - etwas, das Ihnen sagt, warum die Branche / Tag gemacht wurde und ob es noch angemessen ist - prüfen, wie die Archivierung Zweige, die veraltet sind.

Beantwortet am 05/08/2008 um 14:40
quelle vom benutzer

stimmen
25

Wenn Sie Repo über https verfügbar ist, können Sie diesen Befehl Zweig 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"
Beantwortet am 10/02/2016 um 20:36
quelle vom benutzer

stimmen
24
svn cp /trunk/ /branch/NEW_Branch

Wenn Sie einige lokale Veränderungen im Kofferraum haben , dann verwenden RsyncÄnderungen zu synchronisieren

rsync -r -v -p --exclude ".svn" /trunk/ /branch/NEW_Branch
Beantwortet am 03/09/2013 um 10:14
quelle vom benutzer

stimmen
14

Normalerweise würde man es kopieren + ssh svn: //host.example.com/repos/project/branches/mybranch, so dass Sie mehrere Filialen im Repository zu halten, aber Ihre Syntax ist gültig.

Hier einige Ratschläge auf , wie Sie Ihr Repository - Layout zu erstellen .

Beantwortet am 05/08/2008 um 13:40
quelle vom benutzer

stimmen
12

Angenommen, Sie einen Zweig von einem Stamm Namen eingeben möchten (als „TEST“), dann verwenden:

svn cp -m "CREATE BRANCH TEST" $svn_url/trunk $svn_url/branches/TEST
Beantwortet am 23/07/2013 um 10:51
quelle vom benutzer

stimmen
11

Wenn Sie auch auf Zusammenführen Ihrer Filiale planen, empfehle ich sehr freuen Sie auf diese:

Svnmerge.py

Ich höre Subversion 1.5 mehr von der Zusammenführung baut Tracking in, ich habe keine Erfahrung damit. Mein Projekt ist auf 1.4.x und svnmerge.py ist ein Lebensretter!

Beantwortet am 05/08/2008 um 13:46
quelle vom benutzer

stimmen
10

Top-Tipp für neuen SVN-Benutzer; dies kann ein wenig mit immer die richtigen URLs schnell helfen.

Führen Sie svn infonützliche Informationen über den aktuellen abgemeldeten Zweig angezeigt werden soll .

Die URL sollte (wenn Sie im Stammordner svn run) geben Sie die URL Sie kopieren müssen.

Wechseln auch auf den neu Zweig erstellt, verwenden Sie den svn switchBefehl:

svn switch http://my.repo.url/myrepo/branches/newBranchName
Beantwortet am 28/03/2014 um 12:30
quelle vom benutzer

stimmen
5
  • Erstellen Sie einen neuen Ordner außerhalb des aktuellen Projekts. Sie können mit einem beliebigen Namen geben. (Beispiel: Sie haben eine Kasse für ein Projekt mit dem Namen „Customization“ Und es viele Projekte hat, wie „Projekt1“, „Project2“ .... Und Sie wollen einen Zweig der „Projekt1“ erstellen So öffnen Sie zunächst die ".. Customization“, rechts klicken und einen neuen Ordner erstellen und ihm einen Namen geben‚ Project1Branch‘).
  • Rechtsklick auf "Myproject1" .... TortoiseSVN -> Branche / Tag.
  • Wählen Sie Arbeitskopie.
  • Browser öffnen .... einfach rechts parallel auf "To URL".
  • Wählen Sie Anpassung ..... rechts klicken Sie dann auf Ordner hinzufügen. und gehen Sie durch die Ordner, die Sie erstellt haben. Hier ist es „Project1Branch“. Nun clik die OK-Taste hinzuzufügen.
  • Nimm Kasse dieses neuen Bänkchens.
  • Gehen Sie wieder zu Ihrem Projekt, das Zweig Sie erstellen möchten. Rechtsklick TorotoiseSVN -> Zweig / Tag. Dann wählen Sie Kopie arbeiten. Und Sie können die URL als Zweignamen geben. wie {Ihre IP-Adresse / svn / AAAA / Anpassung / Project1Branch}. Und Sie können den Namen in der URL festgelegt, so dass es den Ordner mit diesem Namen nur schaffen wird. Wie {Ihre IP-Adresse / svn / AAAA / Anpassung / Project1Branch / MyProject1Branch}.
  • Drücken Sie die OK-Taste. Jetzt können Sie die Protokolle in sehen ... Ihre Arbeitskopie in Ihrem Zweig gespeichert werden.
  • Jetzt können Sie einen Scheck nehmen ... und lassen Sie Ihre Arbeit genießen. :)
Beantwortet am 05/02/2014 um 11:24
quelle vom benutzer

stimmen
0

Svn Verzweigung ist völlig nutzlos, es ist 100% gleiche, als wenn Sie völlig neue SVN-Repository erstellen.

Es kopiert gesamte Dateisystem von etwas, das Sie verzweigen, und der einzige Vorteil, den Sie haben, ist die Fähigkeit Zweig zurück in die Basis zu verschmelzen, aber Sie können mit völlig neuen Repository das gleiche tun, wenn Sie es anstelle des Zweiges erstellt haben ...

Vielleicht sogar dann ist es besser neues Repository zu erstellen, löschen Sie es, Sie Platz auf dem Server speichern!

Hoffentlich SVN-Team wird beheben, dass in der Zukunft, und Niederlassungen erstellen, basierend auf Datei Unterschied, eher dann das Kopieren von ganzen Ordnern ...

Beantwortet am 11/06/2019 um 13:59
quelle vom benutzer

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more