[SVN] - Release und Arbeits Ordner Dateien

OP #3612552
Lesenswert?

Morsche und schönen Freitag zusammen. Also, folgende Idee bzw. folgendes 
Problem. Ich nutze TortoiseSVN in Version 1.7.13. unter Win7 und meine 
Ordnerstruktur ist die folgende:

--+--Arbeitsordner
  |  +-Ordner_1
  |  +-Ordner_2
  |  +-Ordner_3
  |
  +--ReleaseOrnder
     +Vers_A
     +Vers_B

In den Unterordnern meines Arbeitsordners habe ich zum Beispiel:
  Ordner_1: Code
  Ordner_2: geschriebenen Manuals für die verschiedenen Versionen
  Ordner_3: Entwicklungsdokumente

In den Release Ordner sollen nun die Dateien für die beiden 
verschiedenen Versionen rein, sagen wir es handelt sich zum Beispiel um 
ein Board das Spannungen misst, einmal mit Display in Version A, und 
einmal ohne Display in Version B. Dazu kommen dann in den Ordner Vers_A 
jeweils Dateien aus den verschiedenen Arbeitsordnern und in den Ordner 
Vers_B dann wiederum andere.

Die entscheidende Frage ist nun, ob es eine Möglichkeit gibt die Dateien 
in den ReleaseOrdnern als "versionierte Kopien" abzulegen. Dann würde 
ich sie nur einmal aus den Arbeitsordnern dort anlegen und mit jedem 
Commit->Update wären sie auf dem aktuellen stand? Mit versioned Copys 
funktioniert es bei mir nur lokal. Wenn ich sie lokal öffne haben sie 
den Inhalt der aktuellen versionen aus dem lokalen Ordner wenn ich sie 
dagegen im Repobrowser öffne sind es die veralteten aus einer ganz 
anderen Revision.

Habt ihr da Ideen?
Moderator Persönliche Seite #3612953
Lesenswert?

Philipp L. schrieb:
> Dann würde ich sie nur einmal aus den Arbeitsordnern dort anlegen und
> mit jedem Commit->Update wären sie auf dem aktuellen stand?

Nein, das ist nicht der Sinn einer Versionierung.  Die „Version“ bei
der Versionierung betrifft nicht zwei gleichzeitig und automatisch
parallel gepflegte Varianten, sondern zwei zu verschiedenen Zeiten
mehr oder minder „eingefrorene“ Stände ein und derselben Variante.

Eventuell helfen dir ja Externals für deinen Zweck?  Die kann man aber
nur auf Verzeichnisebene anbringen.  Man könnte sich also für Variante
A und B Verzeichnisse im Baum anlegen und dort dann bestimmte Teile
eines separaten Baums als “External” gewissermaßen einblenden.
Gast #3613233
Lesenswert?

Philipp L. schrieb:
> Die entscheidende Frage ist nun, ob es eine Möglichkeit gibt die Dateien
> in den ReleaseOrdnern als "versionierte Kopien" abzulegen. Dann würde
> ich sie nur einmal aus den Arbeitsordnern dort anlegen und mit jedem
> Commit->Update wären sie auf dem aktuellen stand?

Wozu soll das gut sein?

Philipp L. schrieb:
> Wenn ich sie lokal öffne haben sie
> den Inhalt der aktuellen versionen aus dem lokalen Ordner wenn ich sie
> dagegen im Repobrowser öffne sind es die veralteten aus einer ganz
> anderen Revision.

Man arbeitet doch eh immer mit der lokalen working copy.
OP #3615808
Lesenswert?

Ja, dass es nicht Sinn der Versionierung ist weiß ich, ich dachte nur, 
dass es eine angenehme Möglichkeit wäre.

Die tatsächliche Ordnerstrutkur hat ca. 7 Arbeitsordner mit 57 Dateien 
und die "Release" Struktur 6 Ordner, auf die die 57 Dateien aufgeteilt 
werden, wobei eine Datei aus den Arbeitsordnern mehrfach in 
verschiedenen Releaseordner vorkommen kann. Um jetzt nicht nach der 
Änderung einer Datei diese in allen Releaseordnern ändern zu müssen, 
dachte ich auf irgendeine Weise einen Branch/Merge/Switch Befehl in 
Verbindung mit "copy versioned items" missbrauchen zu können um dass zu 
erreichen.
Gast #3615817
Lesenswert?

Hmm, also unter "Release" verstehe ich etwas, das sich nicht mehr 
ändert.  Also ich habe einen laufenden Entwicklungszweig, und irgendwann 
wird ein Stand eingefroren, und das ist dann die Release. Und der darf 
nie mehr verändert werden, denn sonst hätte man zwei unterschiedliche 
Stände mit der selben Release-Nummer.
OP #3615828
Lesenswert?

Rolf Magnus schrieb:
> Hmm, also unter "Release" verstehe ich etwas, das sich nicht mehr
> ändert.  Also ich habe einen laufenden Entwicklungszweig, und irgendwann
> wird ein Stand eingefroren, und das ist dann die Release. Und der darf
> nie mehr verändert werden, denn sonst hätte man zwei unterschiedliche
> Stände mit der selben Release-Nummer.

Unter dem Aspekt hast Du recht. Die "User" sollen nur Zugriff zu dem 
Releaseordner haben und sich keinen Kopf darum machen was auf der 
Entwicklungsseite geschieht, daher dieser Ansatz. Es geht nicht darum 
strikt unterscheiden zu können zwischen Version 1 und Version 1.0.1. 
Ansonsten würde ich zum Release auch einfach einen Export machen und bei 
Änderungen dann einen neuen usw. Wie man es halt so macht. Die anderen 
Kollegen, die mit an dem Projekt Arbeiten sind da allerdings 
etwas...sagen wir mal unfirm mit dem SVN Umgang. Ich bin nur 
eingesprungen und auch bald schon wieder raus und das war sozusagen ihr 
Wunsch (nachdem sie gesehen haben, dass es mit "Verknüpfung erstellen" 
nicht funktioniert hat...)
Persönliche Seite #3615832
Lesenswert?

Jörg Wunsch schrieb:
> Eventuell helfen dir ja Externals für deinen Zweck?

Sehe ich auch so, Externals kann man (wenn man sich der Einschränkungen 
bewusst ist) für so was ganz gut nutzen siehe:

http://svnbook.red-bean.com/en/1.0/ch07s03.html

Das kann besonders praktisch sein, wenn wie hier, man eigentlich ein 
Sammelsurium verschiedener Orte benötigen würde, klar kann man das auch 
händisch herstellen.

Da man externals auch auf eine feste Revision setzen kann, kann man hier 
das auch innerhalb "echter" Releases nutzen, ist nur etwas mehr Aufwand.
Persönliche Seite #3616364
Lesenswert?

Konrad S. schrieb:
> Ohjeh, noch so ein Verweis in die Vergangenheit

Besser als ein Verweis in eine ungewisse Zukunft ;-P

> This text is a work in progress—highly subject to change—and
> may not accurately describe any released version of the Apache™
> Subversion® software.
> Bookmarking or otherwise referring others to this page is
> probably not such a smart idea.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren