For Q1, I will use my open source project to describe the steps,
For Q2 it is rather hard to say whether copy local is efficient. For each existing ways to handle references, they have pros and cons. So far I don't see an obvious way that NuGet should move on to. We will see what's coming in the future.
- Clone or download the source code from https://github.com/lextm/sharpsnmplib to a machine that has Internet connection.
- Execute prepare.bat (copy an snk file) and release.bat (set package restore to true and initialize the build). The binaries are in the bin folder, and the packages are restored to packages folder.
- Download the source code cleanly again, and copy to another machine without Internet connection. This simulates the situation of your client.
-
Now what you need to do is to copy the entire packages folder from the machine in step 1, to the machine in step 3. Then on it you can repeat step 2. NuGet is smart enough to skip package restore as it detects all necessary packages are present.
For Q2 it is rather hard to say whether copy local is efficient. For each existing ways to handle references, they have pros and cons. So far I don't see an obvious way that NuGet should move on to. We will see what's coming in the future.