Zusammenführen vcproj-Dateien - SCM-Hölle

Merging project/solution Dateien ist eine bekannte Katastrophe unter den Entwicklern/SCM-admins durchführen verschmilzt in Ihren source-control.

Nehmen, zum Beispiel, ein häufiges Szenario: die Entwicklung geschieht auf einem Projekt/die Lösung in zwei verschiedenen Filialen. Wenn die Zeit kommt zu verschmelzen, zurück in die Haupt-Entwicklungslinie, es ist eine sehr kleine ähnlichkeit zwischen den VCPROJ (und SLNs).

Der Grund ist, dass Visual Studio ändern können (und ändern) Lage der verschiedenen XML-Elemente innerhalb dieser Dateien. E. g., Die Konfigurationen Debug und Release können tauschen, um bei jedem speichern-Vorgang auf der proj-Datei. Diese macht es möglich, leicht einarbeiten von änderungen aus jedem Zweig, nicht einmal in Erwägung ziehen, eine automatische Zusammenführen.

Kann ich davon ausgehen, dass Microsoft einige perl-Hash-system, um zu halten die vcproj-Strukturen, also die Darstellung der Dateien beim speichern-operation wird nicht bestellt.

Ich würde zunächst gerne Fragen: hat jemand gefunden, einige elegante Methode zur Umgehung dieses?

Zweiten, ich würde gerne zwei Vorschläge:

  • Microsoft bitte implementieren Sie die oben genannten Dateien und verhindern, dass Sie an einen festen Reihenfolge der Elemente.

  • ein tool finden (oder selbst schreiben), die möglichen vcproj (xml-format) und sln (sln format...) Dateien alphabetisch, rekursiv (alle Elemente innerhalb von Elementen etc.). Mit diesem tool auf dem Quell-und Ziel-Dateien, die es ermöglichen würde leicht zu zeigen (und Zusammenführen) die änderungen, in der Hoffnung, dass Visual Studio liest, sortiert, zusammengeführt Projekt oder die sln-Datei.

Andere Ideen und Gedanken sind willkommen.

  • Ich mag Ihre tool-Idee. es scheint mir eine sinnvolle Sache zu haben. Vielleicht werde ich mal einen es...
  • Wie zuversichtlich sind Sie, dass die Reihenfolge der Elemente keine Bedeutung in der Lösung von Dateien? Sagen wir, innerhalb der ProjectSection(ProjectDependencies) und GlobalSection(TeamFoundationVersionControl) Abschnitte? Gibt es ein veröffentlichtes format irgendwo?
InformationsquelleAutor | 2008-12-16
Schreibe einen Kommentar