2012-10-07 8 views
5

Ich habe ein Visual Studio-Projekt, das ich VisualSVN verpflichtet habe (über das VisualSVN =>Commit Menü in Visual Studio). Ich habe über NuGet eine Reihe von Bibliotheken zu diesem Projekt hinzugefügt.Commiting Bibliotheken über NuGet hinzugefügt

Mein Kollege hat das Projekt heruntergeladen ich SVN hochgeladen (via VisualSVN =>Get solution from Subversion...) und fand heraus, dass diese Bibliotheken fehlen, und er ist mit ihnen erneut herunterladen.

Ein paar Fragen:

  1. Ist das von Design? Oder habe ich meine Lösung nicht korrekt umgesetzt? Oder hat mein Kollege die Lösung nicht richtig auf seine Maschine heruntergeladen?
  2. Wenn dies beabsichtigt ist, was ist der richtige Weg, um Referenzen zu einer Lösung, die von einem SVN-Server heruntergeladen wurde, wieder hinzuzufügen? Ich bin besorgt, dass ich eine Referenz hinzugefügt und damit gearbeitet habe, und dass es möglicherweise aktualisiert wurde, so dass, wenn mein Kollege die gleiche Referenz über NuGet wieder hinzufügt, er eine aktuellere Version bekommen wird, die anders sein wird, und Das wird mein Programm brechen. Ist das ein berechtigtes Anliegen?

Antwort

5

Ja, das ist beabsichtigt. Das ganze Konzept der Verwendung von Nuget ist, dass Sie Bibliotheken in Ihrem Versionskontrollsystem nicht behalten müssen.

Sie müssen mit der rechten Maustaste auf Ihre Lösung in Visual Studio klicken und aktivieren NuGet Package Restore aktivieren.

Dies wird die Lösung zum Wiederherstellen der NuGet-Pakete konfigurieren (wenn fehlende oder keine), wenn Sie einen Build erstellen. Außerdem haben alle Bibliotheken, die Sie für ein bestimmtes Projekt hinzugefügt haben, einen Eintrag im Verzeichnis packages.config, das im Quellverzeichnis des Projekts erstellt wurde. für zB:

<packages> 
    <package id="jQuery" version="1.8.3" /> 
</packages> 

diese Weise NuGet stellt sicher, dass alle die gleiche Version bekommt.

+0

Große Antwort, danke! – JMK

Verwandte Themen