NuGet
description
Transcript of NuGet
NuGet
Paweł Łukasik
Agenda
• Po co?• Co to jest?• Jak tego używać?• Paczki, paczki…• Zależności…• A co dalej?• Warsztaty*
O mnie
• Developer - pasjonat• Lider Wrocławskiej Grupy .NET• Założyciel portalu http://dotnetomaniak.pl• Blog: http://pawlos.blogspot.com
Po co?
• Ninject.MVC3 – 3.0.0.6• Ninject (>=3.0.0.0 – < 3.1.0.0)• Ninject.Web.Common (>=3.0.0.0 – < 3.1.0.0)
– WebActivator (>=1.5)» Microsoft.Web.Infrastructure (>=1.0.0.0)
Co to jest?
• System do zarządzania bibliotekami swoimi, 3rd party + ich zależnościami
JAK TEGO UŻYWAĆ?DEMO – VS, PowerShell
Paczki, paczki…
• Nupkg (http://docs.nuget.org/docs/reference/nuspec-reference)– jest to zip zawierający…• Xml opisujący paczkę• pliki dodawane do projektu• pliki transformowane przed dodaniem
DEMOTworzenie paczek, aktualizacja, przeglądanie
Zależności
Zależności
• Semantic versioning• X.Y.Z-<nazwa>– X – major version– Y – minor version– Z – patch version– -<nazwa> - prerelease
• 1.0.1 , 2.2.1, 1.0.1-alfa, 1.0.3-beta.11, 2.12.1-rc
Zależności
• Projekt X zależy od wersji 1.0.0 Projektu Y• Repozytorium pakietów zawiera takie wersje
projektu Y: 1.0.0, 1.0.1, 2.0.0• Która wersja zostanie zainstalowana?• Zostanie zainstalowana: 1.0.1 - Dlaczego?
Zależności - konflikty
• Upgrade pakietu• Downgrade pakietu• Konflikt
Co dalej?
• TeamCity jako serwer NuGet?• Inne systemy paczek?– OpenWrap
– Orchard
– Chocolatey*
Linki
• http://nuget.codeplex.com• http://docs.nuget.org/• Creating a NuGet Package in 7 easy steps• Hosting Your Own Local and Remote NuGet F
eeds
DZIĘKUJĘ ZA UWAGĘZapraszamy na warsztaty!