Ok, so we have a pretty big solution with about 8 different projects inside it. Each of these projects depends on various third-party builds. This solution is in the main source control branch. We also have about 5 different branches from the trunk.
What is the best way to manage these third-party builds? When you add a link to an assembly, and then click it and view the properties window, I notice that it has a hard-coded assembly path.
For example: all our branches are mapped to "C: \ Code". So trunk will be "C: \ Code \ Trunk" and the branch will be "C: \ Code \ somebranch".
If I create a folder in "C: \ Code \ Trunk" called "Assemblies" and then drop all of our third-party assemblies in this folder and then add a reference to the assembly, is there a reference to the assembly relative to? If I click on the added assembly, I will see that the greed out path property is indicated by "C: \ Code \ Trunk \ Assemblies \ someassembly.dll".
What happens if I then pull out of the trunk? Will "somebranch" have a link to "C: \ Code \ Trunk \ Assemblies \ someassembly.dll" or will it link to "C: \ Code \ somebranch \ Assemblies \ someassembly.dll"?
Currently, we actually have a branch in the control source called "Assemblies", which maps, like any other branch, to "C: \ Code". Thus, all branches with projects referencing assemblies have links to "C: \ Code \ Assemblies \ someassembly.dll" no matter what branch the project is in, the path will be the same.
Unfortunately, this means that you need to get the latest version of the branch you are working on and the assembly branch in order to get a solution for a successful build.
Summarizing:
How to add a link related to the solution? (i.e. add a link to C: \ Code \ Trunk \ Assemblies \ someassembly.dll, and this path will refer to the project that added it, so when creating a branch, it refers to a folder with a branched assembly, not a folder prefabricated assemblies.this link is already relative?
?