none
Verschiedene Versionen warten RRS feed

  • Frage

  • Hallo,

    ist es irgendwie möglich, dass man mit dem Team Foundation Server Express verschiedene Versionen eines Programms wartet und später änderungen zusammen führt?

    Beispiel: Es soll eine umfassende Änderung einer Schlüsselkomponente. Allerdings kann die Entwicklung sich hin ziehen und noch Änderungen an der alten Konstellation notig sein müssen. Es kann aber nicht darauf gewartet werden, bis die neue Version lauffähig ist.

    Gibt es da Wege? Bei einem reinen Dateisystem würde ich schlicht die Dateien kopieren, das ist aber vermutlich in verbindung mit dem TFSE nicht möglich.

    Gruß


    Gruß MaGa

    Donnerstag, 28. März 2013 09:05

Alle Antworten

  • Hi,
    der übliche Weg für solch ein typisches Szenario ist Branching! Im Entwicklerzeig wird ein “Branch” erzeugt. Damit wird eine weitere Parallelarbeit möglich, z.B. Komplextest, Auslieferung usw. Später können Weiterentwicklungen im Entwicklerzweig mittels “Merge” in den parallelen Zweigen eingepflegt werden.
     
    --
    Peter Fleischer
    Donnerstag, 28. März 2013 12:19
  • Hallo,

    wie Peter schon schrieb, heißt hier das Zauberwort Branching. Wie man vernünftigerweise Zweige erstellt, benennt und die Konsistenz zwischen den Zweigen bewahrt, ist im Visual Studio TFS Branching and Merging Guide erklärt. Ich empfehle dir dringend die Lektüre.


    Beste Grüße,
    Andreas Richter
    http://www.anrichter.net

    Samstag, 6. April 2013 13:12
  • Ich versuche gerade damit klar zu kommen. Verzeit also die dummen Fragen. Ich habe ein Ordner namens Gesamtmappe mit diversen Projekten. Darunter habe ich eines, welches ich verzweigt habe in MeinProjekt und MeinProjekt-Weiterentwicklung.

    1. Wie stelle ich fest, in welchen Zweig ich gerade Arbeite. In VSE gibt es nicht die Ordnerstruktur, wie hier das erste Bild

    Link dotnet-expert.de

    2. Wie kann ich auswählen, welche Branch ich verwende? Ich habe mittels manueller Prüfung festgestellt, dass ich scheinbar in MeinProjekt arbeite


    Gruß MaGa



    Montag, 8. April 2013 07:48
  • Die erste Abbildung, auf die du dich beziehst, scheint der Quellcodeverwaltungs-Explorer zu sein. Nicht die aktuell geöffnete Projektmappe.

    Zweige aus dem TFS werden auf Verzeichnisse auf deiner lokalen Festplatte gemappt. Danach hast du, je nachdem, welchen Ordner aus der TFS-Verzeichnisstruktur du gemappt hast, die darunterliegende Verzeichnisstruktur auf deiner lokalen Platte.

    Angenommen, du hast Gesamtmappe auf einen lokalen Ordner gemappt. Dann hast du unterhalb dieses Ordners einmal einen Ordner MeinProjekt und einen Ordner MeinProjekt-Weiterentwicklung.

    Je nachdem, aus wlechem Ordner du deine Projektmappe öffnest, arbeitest du ein einen der beiden Zweige. Einmal geöffnet, siehst du in der IDE keinen mir bekannten Hinweis, in welchem Zweig/Ordner du dich gerade befindest. Aber glaub mir. Einmal die Verzeichnisstruktur angelegt und verstanden, weißt du mit der Zeit, in welchem Zweig du arbeitest.

    Der Übersicht zu liebe, empfehle ich dir aber eine andere Struktur in deinem TFS anzulegen. Hierzu lies dir mal das Thema Verzweigungen aus der MSDN durch und danach den von mir oben bereits empfohlenen Branching Guide.


    Beste Grüße,
    Andreas Richter
    http://www.anrichter.net

    Montag, 8. April 2013 08:45
  • Ergänzend zu meinem anderen Beitrag:

    Du kannst beim Committen sehen, in welchem Ordner/Zweig du gerade arbeitest.



    Beste Grüße,
    Andreas Richter
    http://www.anrichter.net

    Montag, 8. April 2013 08:52
  • Hi,
    wenn Du Dir eine unpassende Arbeitsweise angewöhnst, kann es schnell passieren, dass Du im falschen Zweig arbeitest. Das ist mir auch schon passiert. Ich arbeite deshalb folgendermaßen:
     
    - Es gibt einen dev-Zweig für Entwicklungen und einen main-Zweig für fertige Entwicklungen, die komplex getestet und dann ggf. ausgeliefert werden.
     
    - Das Mapping lege ich während der Entwicklung ausschließlich nur im dev-Zweig fest. Da kann es nicht passieren, dass ich im falschen Zweig arbeite.
     
    - Für den Branch- und Merge-Prozess lege ich ein Mapping im übergeordneten TFS-Ordner an. In dieser Phase werden auch die Pakete für die Komplextests und ggf. die Auslieferung erzeugt.
     
    - Nach Ende des Branch- bzw. Merge-Prozesses lösche ich das Mapping auf den übergeordneten Ordner wieder. Danach kann ich nur noch im dev-Zweig arbeiten.
     
    --
    Peter Fleischer
    Montag, 8. April 2013 19:55