Como você organiza projetos Visual Studio de código aberto com dependências de código aberto?

Eu comecei um projeto MVC4 de código aberto que está usando algum outro projeto de código aberto como uma dependência. Eu bifurquei o outro projeto e vou modificá-lo de acordo com minhas necessidades. O problema que estou enfrentando é como manter esses projetos dependendo uns dos outros, mas mantidos separadamente. No entanto, as pessoas que conseguiram puxar meu projeto receberiam o projeto de dependência também?

Eu posso colocar todo o código relacionado de outro projeto no meu repositório, mas dessa forma não poderei contribuir para um fork do projeto dependente. Eu vou me tornar uma parte do meu repositório. Não quero realmente fazer isso.Eu posso manter outro projeto completamente separado e copiar arquivos * .dll no meu projeto. E cometer arquivos DLL dependentes no git. Isso é bom, mas eu perco a capacidade de desenvolver dois projetos ao mesmo tempo, junto com entrar no código dependente na depuração (bem, talvez não se copiar arquivos * .pdb)Semelhante ao ponto 2, posso construir pacotes nuget a partir de um projeto dependente e adicioná-los ao meu projeto principal - novamente, não posso realmente desenvolver os dois projetos ao mesmo tempo, preciso alternar contextos.Com alguma mágica tem um arquivo de solução que combina projetos do meu repositório e do repositório dependente. Em cada compilação, copie os arquivos DLL dependentes para a pasta / lib e confirme-os. Dessa forma, não preciso alternar contextos entre projetos separados. Mas a desvantagem é quando outros contribuidores git puxam meu projeto, não obtêm projeto dependente, e os arquivos de solução provavelmente serão quebrados para eles, porque ele fará referência a um projeto que não está no repositório.

Como você organiza seu código neste caso?

questionAnswers(3)

yourAnswerToTheQuestion