假设我有子模块回购:
_git/DbModel (only source code indexed. No /bin or /obj folders)
两个需要DbModel作为参考库的项目:
_git/TTT
_git/TPM
我已经通过GitBash将DbModel作为子模块添加到他们两个
git submodule add https://RepoPath/_git/DbModel
我的本地回购现在看起来像这样:
Source\Repos\TTT\TTT.sln
Source\Repos\TTT\DbModel\DbModel.sln
Source\Repos\TPM\TPM.sln
Source\Repos\TPM\DbModel\DbModel.sln
我的团队资源管理器显示了现在可用的两种不同解决方案,我可以轻松地在它们之间切换。
但是。也许这是一个新手问题......
我不知道如何添加DbModel解决方案作为TPM和TTT的参考! 当我点击"添加参考" - > "浏览"在VS中,我只能添加" .dll,.tlb,.olb,.ocx,.exe,.manifest" as"参考文件。
它应该如何工作?我应该每次编译子模块解决方案并添加.dll作为参考吗?我需要添加源代码。
答案 0 :(得分:9)
对于那些对此感兴趣的人:
git submodule add https://RepoPath/_git/DbModel
git submodule init //this is IMPORTANT
git submodule update
然后从新创建的文件夹中添加解决方案中的现有项目。像那样:
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)