Das man Einstellungen von Visual Studio mittlerweile einfach und intelligent ex- und importieren lassen ist ja mittlerweile bekannt. Man findet diese Funktion direkt im Tools Menü. In meinem Blog fand dies auch schon Erwähnung.
Weitaus versteckter in den Einstellungen von Visual Studio findet man unter
Tools -> Environment -> Import and Export Settings
einen Schalter der das heißt: Use team settings file
Hier ist ein Feature verborgen, dass es wirklich einfach macht auch in einem Team identische Projekt und Visual Studio Einstellungen auf jedem Arbeitsplatz einzustellen. Und das mit wirklich geringem administrativen Aufwand.
Gerade die Include und Library Pfade für gemeinsame Bibliotheken und deren Reihenfolge lassen sich direkt vorbelegen. Und sie werden bei jedem Neustart von Visual Studio auf den vorbestimmten Wert zurückgestellt.
Vorbei die Suche warum in aller Welt irgendwelche falschen SDK Header und Libraries verwendet werden. Warum ein Entwickler immer noch eine uralte Libary eines Drittanbieters verwendet und in seinen Modulen ein Bug auftaucht, den alle schon überwunden glaubten.
Voraussetzungen dafür ist natürlich, dass die einzelnen Rechner der Entwickler natürlich ein ähnliches Verzeichnis Layout verwenden, bzw. die gemeinsamen Bibliotheken im Netz liegen.
Im Prinzip lässt sich jede Einstellung von VS auf diesem Wege beeinflussen.
Nach meiner Meinung, sollten die Std-Sdk (PlatformSDK) von jedem selber richtig installiert und aktuell gehalten werden. Die Drittanbieter Bibliotheken, können aber zu den jeweiligen Projekten mit in der Projektverwaltung gehalten und vor allem gleich und aktuell gehalten werden.
Bsp:
In meinem Monotone Repository meines Projektes, liegen boost für vc7.1 und auch vc8 fertig mit den libs und headern. Genauso wie auch diverse andere Bibliotheken. Angebunden werden sie einfach relativ per Compilerflags. /I „../boost“… usw. usf.
Somit hat jeder, egal wohin er es auscheckt, sofort einen bearbeitbaren Stand.
Ähnlich relativ ist auch meine Ablage der .obj Dateien die beim Übersetzungsvorgang entstehen und auch die ablage und einsortierung aller .exe/.dll Dateien.
/project
/project/compile
/project/binary
/project/binary/sub blah blub 😉
Ich gebe zu, meine Monotone db nähert sich den 300mb (liegt aber weniger an den Binaries in der History, als an der Menge an Code und seiner Historie…) 😉 aber wenn man auf einen blanken Rechner mit gehen müsste, kann man sie ja auch per USB-Stick einspielen (im Falle einer langsam Internetverbindung z.b.).