Also ich arbeite nun seit 4 oder 5 Jahren mit svn.
In Teams mit Eincheckern von 1 bis ca. 40 lief das wirklich gut.
Git hat ein paar Vorteile für sehr, sehr große Teams und für offline-Fähigkeit.
Git funktioniert, aber die Worte "viel eleganter, flexibler, mächtiger" in Verbindung mit einem Version Control Systems hab ich das letzte mal in einem Projekt gehört, in dem uns IBM Synergy aufgezwungen wurde. Das war noch übler als Rational Clear Case und das ist wirklich nicht einfach, ein noch dysfunktionaleres Versional Control System zu erstellen als Rational ClearCase. Schliesslich wurds durch svn ersetzt.
Der normale Software-Arbeiter erwartet von einem Version Control System keine herausragende Flexibilität, sondern dass es nach gewissen nachvollziehbaren Regeln zuverlässig seine Arbeit tut und man im Falle von unausweichlich auftretenden Versionskonkflikten eine konfortable und zuverlässige Oberfläche zur Verfügung gestellt bekommt, um die Probleme selbstständig zu lösen.
Wer svn für Domino Entwicklung nutzen will, sollte sich in keinem Fall abschrecken lassen. Git ist nur eine Alternative eines gut funktionierenden Systems. Viel wichtiger ist es, sich in seinem Entwicklungsstil an Version Control Systeme zu gewöhnen. Es lohnt sich. Nach ein bischen Übung braucht man sich auch dann keine Sorgen machen, falls jemand mit einem Git-Bauchladen ankommt und svn durch git ersetzt wird. Für denjenigen, dessen source code in dem Source Control System liegt ist das nämlich sehr ähnlich.
Wichtigster Trick: OFT einchecken. Falls jemand anders denselben code bearbeitet wie man selber, hat der das Problem beide Versionen zu synchronisieren, wenn man selbst zuerst eincheckt. Egoistisch, aber sehr effektiv.