5 Stimmen

Replizieren der Link-Fähigkeit von Sourcesafe in SVN oder anderen Versionskontrollsystemen?

Derzeit verwendet mein Team Visual Sourcesafe, und da ich aus erster Hand weiß, wie schrecklich die grafische Benutzeroberfläche ist, und nachdem ich im Internet gehört habe, wie unzuverlässig sie ist, habe ich versucht, einen Wechsel zu SVN voranzutreiben.

Heute sprach ich mit dem Manager über die eventuelle Umstellung, die er unterstützt, und er fragte, ob es möglich sei, in SVN quellensichere Links zu erstellen. Links, für Leute, die mit Sourcesafe nicht vertraut sind, funktionieren konzeptionell genauso wie Dateilinks unter Linux. Wir verwenden sie, um gemeinsamen Code/Bibliotheken zwischen Projekten zu verknüpfen. Ich erklärte ihm, dass es keine Möglichkeit gäbe, mit SVN Links zu erstellen, und er meinte, dass dies ein wichtiger Knackpunkt bei der Migration sein könnte.

Ich sagte ihm, dass ich in meinem lokalen SVN (das ich zur Erleichterung meiner Entwicklung beibehalte und nur in regelmäßigen Abständen in Sourcesafe überprüfe) gemeinsam genutzten Code/Bibliotheken an einem Ort ablege und ANT auf diesen Ort verweise. Ich hatte jedoch den Eindruck, dass er von dieser Lösung nicht sonderlich beeindruckt war, da sie die Komplexität der ANT-Aufgaben erhöht. Ich persönlich denke, dass ein etwas komplexeres ANT-Skript besser ist als ein Haufen Link-Dateien in der Versionsverwaltung, aber es ist wirklich eine Frage des Paradigmas, dem man anhängt.

Ich bin neugierig, wie Entwickler im Allgemeinen diese Einschränkung umgehen, und unterstützen neuere Versionskontrollsysteme wie Git und Mercurial Links?

8voto

Joel Coehoorn Punkte 377088

Blick in svn:externals Eigenschaften.

3voto

Jim Petkus Punkte 4452

Wir verwenden TFS für die Versionskontrolle, und auch TFS verfügt nicht über die Funktion VSS-Links. Wir haben alle unsere verknüpften Dateien eliminiert. Alle Klassendateien, die zuvor verknüpft waren, wurden in Klassenbibliotheken abgelegt, die in unseren anderen Projekten als gemeinsame Projektreferenzen in der Lösung verwendet werden. Sie geben also im Wesentlichen Bibliotheken und keine Klassendateien frei.

Es war ein bisschen schwierig, sich daran zu gewöhnen, aber seither habe ich keine Links mehr vermisst. Es fördert wirklich eine bessere Entwurfspraxis, wenn man seinen Code so einrichtet. Dass die Klassen nur in einem Projekt verwendet werden, hilft dabei, Änderungen zu vermeiden, da es viel einfacher ist, die Auswirkungen der Änderung zu testen (mit Links weiß man vielleicht nicht einmal, ob man mit einer Änderung ein Kompilierungsproblem verursacht hat). Außerdem funktionieren einige der Funktionen der schöneren Versionskontrollsysteme (wie robuste Verzweigungs- und Zusammenführungsunterstützung) viel besser, wenn man sich nicht um verlinkte Dateien kümmern muss.

-1voto

Links sind nützlich, wenn Quelldateien zwischen verschiedenen Plattformen ausgetauscht werden sollen (.NET, Silverlight, .NetCF) weil Quelldateien gleich sein können und daher gemeinsam genutzt werden können, aber kompilierte Bibliotheken können nicht zwischen diesen Plattformen geteilt werden.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X