Hallo Thomas!
Über den Visual Source Safe Administrator findest Du unter
Tools|Options…|General die Option „Allow multiple
checkouts“.
Das habe ich schon gefunden, birgt aber auch seine Tücken…
Damit können mehrere Benutzer gleichzeitig Dateien auschecken.
Dies wird auch mit einem entsprechendem Symbol im Source Safe
Explorer angezeigt.
Ein weiteres Problem ist, daß, wenn jetzt Mitarbeiter A ein
Modul hinzugefügt hat, dieses wieder eingecheckt hat, es nicht
bei den anderen beide Mitareitern erscheint, man muß erst alles
neu abrufen, damit dies allen zur Verfügung steht. Dieses
Problem wäre ja nicht so schlimm, wenn man die vbp mergen
könnte, das heißt A hat eine vbp, B hat eine vbp und C hat
eine. Nachdem alle eingecheckt haben, müßte sich die neue
vbp-Datei aufgrund der Änderungen von uns Dreien neu
zusammensetzen. Derzeit bekommen wir nur die vbp, die als
letzte eingecheckt wurde und somit müssen wir dann die anderen
Formulare/Module/Klassenmodule händisch hinzufügen, was mühsam
ist.
Ich denke, Dein Problem kann nicht mit Source Safe oder einem
anderen CVS behoben werden. Es ist auch kein MS-typisches
Problem, sondern eine Frage der Projektorganisation.
Das Projekt war ursprünglich als one-man-show geplant, jetzt sind wir zu dritt.
Dass Programmierer selbst entscheiden, wann, wo und ob eine
Modularisierung erfolgen soll ist eher unüblich.
Ich bin nicht für das Projektmanagement zuständig (, dem man noch ganz andere Punkte vorwerfen könnte), sondern ich möchte bloß wissen, wie ich mich jetzt am besten nach der Decke strecken kann, ohne sämtliche neue Moduln händisch hinzuzufügen.
Bei der
Entwicklung wird doch genau festgelegt, welche Module mit
welchen Schnittstellen zu erstellen sind. Die Module können
dann völlig unabhängig voneinander erstellt und anhand der
Schnittstellendefinition auch unabhängig voneinander getestet
werden. Jeder Programmierer löst „seine“ Aufgaben innerhalb
eines eigenen Source Safe Projekts.
Wenn ich eine Klasse entwickle, die Initialisierungswerte zur Verfügung stellt, kann mein Kollege solange nicht testen, solange meine Klasse nicht im Projekt ist, Schnittstelle hin oder her, er kann lediglich mit Testinitialisierungen testen. Dies ist vor allem dann ärgerlich, wenn wir alle noch nicht wissen, welche Werte aus der Datenbank kommen können. Über das, was das Projektmanagement zu tun hat, brauchtest Du mich nicht aufzuklären, da trittst Du offene Türen ein. Ich versuche, wie immer, das Beste daraus zu machen und wenn wir mit Source Safe arbeiten könnten, wäre das schon eine immense Erleichterung.
Das Haupt-Projekt im Source Safe benutzt dann die von den
Programierern/Mitarbeitern erstellten Module mit (im Source
Safe Explorer rechte Maus-Taste, Share…).
Das mit dem automatischen bzw. Programm unterstützen mergen
würde ich mir auch zwei bis dreimal überlegen. Wird mergen
notwendig, bedeutet dies, dass in der Projektorganisation
keine ausreichende Festlegung von Zuständigkeiten erfolgte.
Das konnte auch nicht stattfinden, da die Projektleitung am Beginn des Projekts noch nicht genau wußte, was zu tun sei. Schön, wenn Du schon solche Projekte erlebt hast, ich habe noch nie in einem schulmäßig durchgezogenen Projekt gearbeitet, bin aber seit Jahren in der Branche.
Ich wollte keine Schulmeisterungen wie ein Projektablauf zu erfolgen hat, sondern wissen, wie Personen, die mit source safe arbeiten dies handhaben, mit Teilprojekten ist das ein Lösungsansatz, aber wenn ich Funktionen brauche, die mein Kollege erstellt hat, kann ich trotzdem nicht darauf zugreifen, sondern muß warten, bis er sie eingecheckt hat und dann die letzte Version abrufen. Das haben wir, zum Glück mit einem Testprojekt, versucht, leider waren dann aber andere Sourcen verschwunden, weil ich die vbp meines Kolegen erhielt, in der aber meine eben entwickelten Moduln nicht standen (wie auch).
Wenn ich richtig verstanden habe, was Du schriebst, dann hat jeder Teilnehmer ein eigenes Projekt, das den anderen nur eingecheckt zur Verfügung steht. Das werden wir jetzt ausprobieren.
Danke
Gollum