it-swarm.com.de

Was ist Trunk, Branch und Tag in Subversion?

Mögliches Duplikat:
Was bedeuten "Branch", "Tag" und "Trunk" wirklich?

Was ist ein Trunk, Branch und Tag in Subversion und wie werden sie am besten verwendet?

Welche Tools kann ich für Subversion in Visual Studio 2008 verwenden?

230
Hemanshu Bhojak

Der Trunk ist die Hauptentwicklungslinie in einem SVN-Repository.

Ein Zweig ist eine Nebenlinie der Entwicklung, die entwickelt wurde, um größere, experimentelle oder störende Arbeiten durchzuführen, ohne die Benutzer der Trunk-Version zu stören. Außerdem können Zweige verwendet werden, um Entwicklungslinien für mehrere Versionen desselben Produkts zu erstellen, z. B. um einen Platz zum Backportieren von Bugfixes in eine stabile Version zu haben.

Schließlich sind -Tags Markierungen, um bemerkenswerte Revisionen im Verlauf des Repository hervorzuheben, normalerweise Dinge wie "dies wurde als 1.0 veröffentlicht".

Lesen Sie die HTML-Version von " Versionskontrolle mit Subversion ", insbesondere Kapitel 4: Verzweigen und Zusammenführen , oder kaufen Sie sie in Papierform (z. B. bei Amazon ). für eine eingehende Diskussion der technischen Details.

Wie andere (z. B. Peter Neubauer unten) die zugrunde liegende Implementierung als /tags/branches und /trunk directorys wird nur konventionell und in keiner Weise von den Tools erzwungen. Ein Verstoß gegen diese Konventionen führt zu Verwirrung, da dadurch die Gewohnheiten und Erwartungen anderer, die auf das Repository zugreifen, verletzt werden. Es muss besonders darauf geachtet werden, dass keine neuen Änderungen an Tags vorgenommen werden, die eingefroren werden sollten .


Ich benutze TortoiseSVN aber keine Visual Studio Integration. Ich lasse das Dialogfeld "Nach Änderungen suchen" auf dem zweiten Monitor die ganze Zeit geöffnet, damit ich nachverfolgen kann, welche Dateien ich berührt habe. Weitere Empfehlungen finden Sie in der Frage " Best SVN Tools ".

284
David Schmitt

Die Verzeichnisse "trunk", "branches" und "tags" sind Konventionen in Subversion. Für Subversion ist es nicht erforderlich, dass Sie über diese Verzeichnisse verfügen oder ihnen eine besondere Bedeutung zuweisen. Diese Konvention ist jedoch weit verbreitet. Sofern Sie keinen guten Grund haben, sollten Sie sich an die Konvention halten. Die von anderen Lesern angegebenen Buchlinks beschreiben die Konvention und ihre Verwendung.

36
Peter Neubauer

Die Antwort von David Schmitt fasst die Dinge sehr gut zusammen, aber ich denke, es ist wichtig zu beachten, dass die Begriffe "Zweig", "Tag" und "Trunk" für SVN nichts bedeuten. Diese Begriffe sind rein semantisch und wirken sich nur auf die Art und Weise aus, wie wir als Benutzer des Systems diese Verzeichnisse behandeln. Man könnte sie leicht als 'main', 'test' und 'releases' bezeichnen. Solange jeder, der das System verwendet, versteht, wie jeder Abschnitt richtig verwendet wird, spielt es keine Rolle, wie er heißt.

24
KOGI

Ein guter Ort, um etwas über Subversion zu lernen, ist http://svnbook.red-bean.com/ .

Was Visual Studio-Tools betrifft, mag ich AnkhSVN , aber ich habe das VisualSVN -Plugin noch nicht ausprobiert.

VisualSVN basiert auf TortoiseSVN , aber TortoiseSVN ist auch eine nette Ergänzung zu Ankh IMHO.

18

Installieren Sie TortoiseSVN und AnkhSVN , um Subversion in Visual Studio 2008 zu verwenden.

TortoiseSVN ist eine wirklich einfach zu verwendende Software zur Versionskontrolle/Versionskontrolle/Quellcodeverwaltung für Windows. Da es sich nicht um eine Integration für ein bestimmtes IDE handelt, können Sie es mit beliebigen Entwicklungstools verwenden. TortoiseSVN kann kostenlos verwendet werden. Sie müssen kein Darlehen aufnehmen oder ein volles Jahresgehalt bezahlen, um es zu nutzen.

AnkhSVN ist ein Subversion SourceControl-Anbieter für Visual Studio. Mit der Software können Sie die gängigsten Versionskontrollvorgänge direkt in der Microsoft Visual Studio-IDE ausführen. Mit AnkhSVN müssen Sie Ihr IDE nicht mehr verlassen, um Aufgaben wie das Anzeigen des Status Ihres Quellcodes, das Aktualisieren Ihrer Subversion-Arbeitskopie und das Festschreiben von Änderungen auszuführen. Sie können sogar Ihr Repository durchsuchen und Ihr bevorzugtes Diff-Tool einbinden.

10
gimel

Ein Trunk wird als Hauptcodebasis betrachtet, als Abzweig des Trunks. Sie erstellen beispielsweise eine Verzweigung, wenn Sie eine neue Funktion implementieren möchten, aber keine Auswirkungen auf den Haupttrunk haben möchten.

TortoiseSVN hat eine gute Dokumentation und ein großartiges Diff-Tool.

Ich benutze Visual Studio und ich benutze VisualSVN und TortoiseSVN.

8
Mike_G

Wenn Sie Subversion noch nicht kennen, können Sie sich diesen Beitrag auf SmashingMagazine.com ansehen, der den passenden Titel ltimative Zusammenfassung für die Versionskontrolle mit Subversion trägt. .

Es behandelt den Einstieg in Subversion mit Links zu Tutorials, Referenzmaterialien und Buchvorschlägen .

Es behandelt Tools (viele sind mit Windows kompatibel) und erwähnt AnkhSVN als Visual Studio-kompatibles Plugin. Die Kommentare erwähnen auch VisualSVN als Alternative.

6
Kevin Williams

Ein fantastisches kostenloses Dienstprogramm für Entwickler ist SVN Monitor . Es dient als Herzschlag für Ihren Baum und zeigt Ihnen, wenn es Aktualisierungen, mögliche Konflikte usw. gibt. Für einen Solo-Entwickler ist es jedoch nicht ganz so nützlich.

5
swilliams

Ein gutes Buch über Subversion ist Pragmatische Versionskontrolle mit Subversion, in dem Ihre Frage erklärt wird und das viel mehr Informationen enthält.

4
eKek0