Como devo usar o Nuget para desenvolvimento interno de empresas?
Usamos o Nuget para nosso desenvolvimento interno, para permitir que compartilhemos códigos entre equipes. No entanto, nos deparamos com problemas quando uma pessoa está trabalhando em código que será implantado em vários pacotes nuget ao mesmo tempo. Por exemplo
A depende de B, que depende de C.
A, B e C têm seus artefatos empurrados para o Nuget e é assim que gerenciamos as dependências entre A, B e C. O problema é que se um desenvolvedor quiser fazer alterações em C e ver rapidamente essas mudanças refletidas em A, elas tem que passar pelo seguinte processo.
Faça a mudança em C.Empurre a mudança para gitO CI seleciona a mudança para C e cria e implementa o novo pacote nuget.Vá para B e atualize a referência para C usando o comando nuget update package.Empurre a mudança para o arquivo packages.config para gitCI pega a mudança para B e cria e implanta novo pacote nuget para BAgora abra A e mude a referência para o pacote de atualização B e nugetFaça alterações em A para acompanhar as mudanças em B (e transitivamente C)Isso parece extremamente doloroso e está fazendo com que alguns de nossos desenvolvedores questionem a escolha do Nuget para nosso código desenvolvido internamente. Todos ainda gostam de consumir pacotes externos.
Existe algum melhor fluxo de trabalho para usar o Nuget internamente?