![]() |
Sinnvolle Ordnerstruktur für mehrere Projekte in Subversion
Hallo zusammen,
da ich nun so langsam mit Subversion zurecht komme. Bin aber noch nicht perfekt. Wollte ich mal um eure Meinung fragen, wie Ihr eine entsprechende Struktur für mehrere Projekte in Subversion aufbauen würdet ? |
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Ich kenne nur zwei Arten:
Code:
tags
branches trunk |- Projekt_1 |- Projekt_2 ...
Code:
Projekt_1
tags branches trunk Projekt_1 tags branches trunk ... |
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Hallo Christian,
die zweite Variante kenne ich aus einer Beschreibung, wobei mir die erste Variante für sinnvoller erscheint. Jetzt bleibt für mich eigentlich nur noch die Frage, zu welchem Zeitpunkt lege ich ein neues Repository an oder lege ich nur ein einziges Mal ein Repository an ? |
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Für was sind den eigentlich die einzelnen Zweige gedacht?
|
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Zitat:
@Luckie: Sry, die Frage verstehe ich nicht. |
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Zitat:
Bei uns ist ausschließlich Variante 2 im Einsatz. Jedes Projekt wird einzeln behandelt und hat eigene Tags, Branches und nen Trunk. Alles andere ist in meinen Augen nicht sinnvoll. Was die Repositorys angeht, hier ist man recht frei. Bei uns wird das so gehandhabt: Es gibt pro Kunde ein Repository (und dann noch eins für interne Entwicklungen). Das funktioniert recht gut, beruht im Endeffekt aber darauf, dass die Anzahl unserer Kunden relativ begrenzt ist, während gleichzeitig die Anzahl der Projekte pro Kunde relativ hoch ist. Insofern kann man das nicht verallgemeinern. |
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Zitat:
hiermal ein Zitat aus einer Anleitung : Zitat:
|
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Die Anleitung ist aus der Tortoise SVN Hilfe und lässt sich vollständig so lesen:
Zitat:
|
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Ach ja, was ich bei meiner Lösung noch ergänzen sollte: Mit "Projekt" ist hier eine komplette Projektstruktur gemeint. Bei VS-Projekten also zumeist die komplette Solution mit allen enthaltenen Projekten, und das sind dann also "related projects". Man ist ja recht frei, wie man das genau handhaben will und insofern sehe ich erst recht wenig Sinn in Variante 1, weil ich da der TortoiseSVN-Bedingung "and each one is checked out individually" folgen würde. Also den "Bruch" immer dort machen, wo man separat auschecken möchte.
|
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Ich wollte wissen, was in die Ordner reinkommt. Also was kommt in die Ordner trunk, branches und tags?
|
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Immer ein komplettes Projekt in dem jeweiligen Zustand.
Man checkt immer nur einen Ordner aus. Also z.B: MeinProjekt\Trunk. Man hat normalerweise nie Trunk, Branches und Tags gleichzeitig auf der platte. Wäre ja auch doof, denn unter Tags 'Tagged' man normalerweise ein Release. Man hätte also jedes jemals erstellte Release der Software parallel auf der Platte. In Branch stecken entwicklungszweige, die man z.B. auch mal nicht kompilierfähig einchecken kann, ohne dass es andere Stört. Beispiel: MeinGroßesProjekt\Trunk - hier entwickeln alle an der aktuellen Version MeinGroßesProjekt\Branches\NeuesFeature - hier wird ein neues Feature entwickelt, dass erst in den Trunk kommen soll wenn es fertig ist MeinGroßesProjekt\Branches\UmbauFachklassen - hier wird etwas entwickelt, was zwangsläufig mal einen nicht kompilierfähigen stand erzeugt. Das kommt erst in den trunk wenn es fetrig ist. MeinGroßesProjekt\Tags\1.1\ - Hier ist Version 1.1 drin MeinGroßesProjekt\Tags\1.2\ - Hier Version 1.2 MeinGroßesProjekt\Tags\2.0\ - Hier Version 2... |
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Trunk ist der Hauptzweig der Entwicklung. Normal baut man hier neue Features usw. die nicht für die Produktion geeignet sind und viele Fehler haben können.
Branches enthält parallele Entwicklungen zum Trunk oder anderen Branches. Stelle es dir als Baum vor. Parallele Entwicklung kann z.B. für Releases verwendet werden. Man zweigt vom Trunk die Entwicklung ab, weil man sagt, dass nun die komplettierten Features nun getestet und verbessert werden sollen. Nach dem Release kann mann dann dort auch noch Fehler beheben. Hat man mehrere Kunden für dasselbe Produkt mit jedoch leicht unterschiedlichen Konfigurationen, kann man so jeden Kunden mit seinem massgeschneiderten Produkt beliefern, während im Trunk neue Features entstehen. Tags enthalten Schnappschüsse vom Trunk, Branches oder Teilen davon. Sie sind im Gegensatz zu Branches fix und können/dürfen nicht verändert werden. Es sind einfach Zustandssituationen zu bestimmten Versionen. SVN vergibt zwar für jede Änderung eine eindeutige Revision, d.h. man bräuchte Tags garnicht, jedoch kann man Tags mit Namen benennen. In SVN ist es (leider) möglich, auch Tags weiter zu verändern und somit als Branch zu missbrauchen. |
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Ein kleiner Nebenhinweis zu diesem sehr interessanten Artikel:
Es ist möglich, in SVN Pfadbasierte Berechtigungen zu setzen: ![]() Gruß alias5000 |
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Zitat:
![]() Das kan auch svnserve, man muss es nur entsprechend einrichten. Wobei der Weg über den Apache eindeutig der flexiblere ist ;-) vgl. Crossposting in EE: ![]() |
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Da ich alleine Programmiere ist das unerheblich mit den Zugriffsrechten. Ich habe eigentlich noch zwei Verständnisfragen.
Ich habe mir Arbeitskopien erstellt von einem Linux Server. Was passiert, wenn ich jetzt diese Arbeitskopie auf einen Windows Server mit Commit überspiele und dann wieder später auf meinen Linux Server ? Oder sollte ich da ganz die Finger von lassen ? Ich habe mir mal die Größe der Repositories angeschaut. Die ist ja um ein vielfaches kleiner als meine Arbeitskopie, wird das ganze durch die Datenbank soweit runterkomprimiert ? |
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Du solltest sicherstellen, dass Du in deiner Arbeitskopie für jegliche Text-Files, deren Zeilenenden unter Windows und Linux verschiedenen sind (Also jeglicher Source, Textfiles, ...) das SVN-Property svn:eol-style mit dem Wert native haben. Dann gibt es da eigentlich wenig Probleme
|
Re: Sinnvolle Ordnerstruktur für mehrere Projekte in Subvers
Hallo Benny,
Zitat:
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:29 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz