Ich bin gerade dabei, diesen .NET-Shop von svn auf git zu verlagern, und habe einige Hilfsprobleme identifiziert, für die ich eine Lösung haben möchte, bevor wir den Schalter umlegen.
Die Frage, die ich in dieser Frage speziell stelle, ist die Durchsetzung von Zeilenenden. Standardmäßig wird git für Windows mit dem Befehl 'checkout crlf, commit lf' installiert, was für eine Reihe von Quellen, die (soweit mir bekannt ist) ausschließlich aus crlf-Endungen bestehen, nicht funktioniert.
Ich weiß nicht, dass ich blind einem bestimmten Entwickler vertrauen würde, um diese selbst gegebene Anweisung richtig zu konfigurieren, also überlege ich mir eine (oder beide) der folgenden Möglichkeiten, war aber neugierig, ob jemand hier einen anderen Weg gegangen ist.
- Ein Pre-Commit-Hook, der nach lf-Zeilenenden (oder allen lf-Zeilenenden) sucht und in diesem Fall zurückweist.
- Ein Installationsskript, das an devs verteilt wird und das die globale Konfiguration mit "as-is, as-is" auffüllt.
PS Beim Schreiben dieses Artikels ist mir aufgefallen, dass die anfängliche Konvertierung von svn nach git die Standardmethode übernehmen könnte, und solange die Leute an der Standardmethode festhalten, wäre das auch ziemlich nahtlos. Nachdem ich ein Entwickler von Git in einem .NET-Shop war, der Git mit dem nicht standardmäßigen Status "as-is, as-is" installiert hat, habe ich dort auch meine eigenen Probleme erstellt (alle hatten vor meiner Ankunft den Standardwert geändert). . Also neige ich immer noch zu einer Art Durchsetzungsmechanismus.