Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Add git submodule as reference to existing solution in VS

Lets say I have submodule repo:

_git/DbModel (only source code indexed. No /bin or /obj folders)

And two projects which needs DbModel as reference library:

_git/TTT
_git/TPM

I've already add DbModel as submodule via GitBash to both of them

 git submodule add https://RepoPath/_git/DbModel

And my local repos now look like this:

Source\Repos\TTT\TTT.sln
Source\Repos\TTT\DbModel\DbModel.sln

Source\Repos\TPM\TPM.sln
Source\Repos\TPM\DbModel\DbModel.sln

My Team Explorer shows two different solutions which are available now and I can switch between them easily.

But. Maybe this is kinda newbie question...

I don't know how to add DbModel solution as reference to TPM and TTT! When I click "Add Reference" -> "Browse" in VS I can only add ".dll, .tlb, .olb, .ocx, .exe, .manifest" as "reference files.

How its supposed to work? Should I compile sub module solution every time and add .dll as reference? I need source code to be added.

like image 724
Szer Avatar asked Feb 02 '15 08:02

Szer


1 Answers

For those who will be interested in this:

git submodule add https://RepoPath/_git/DbModel
git submodule init   //this is IMPORTANT
git submodule update

and then add existing project in your solution from newly created folder. Like that:

 Source\Repos\TPM\DbModel\DbModel\DbModel.csproj

P.S.

Source\Repos\TPM\                  solution root folder (with main project sln file inside it)
Source\Repos\TPM\DbModel           submodule root folder (with submodule sln file)
Source\Repos\TPM\DbModel\DbModel   submodule project folder (with csproj file)
like image 179
Szer Avatar answered Oct 19 '22 04:10

Szer