Gerenciando referências no projeto .NET de código aberto?

5

Qual é a melhor prática para gerenciar referências em um projeto de código aberto .NET? Estou escrevendo uma pequena biblioteca que usará o Json.NET. Devo verificar a DLL do Json.NET diretamente no controle de origem?

    
por TaylorOtwell 08.09.2011 / 00:36
fonte

3 respostas

3

Sim, você deve - ou fazer referência ao controle de versão do projeto original diretamente (ou seja, usar o recurso externo do SVN para obter a revisão relevante do repositório de origem ou ter um link para obter a versão correta da origem do projeto).

Coloque a dll em uma parte um pouco separada do seu repositório - não empacote no diretório / bin / release, você achará muito mais fácil trabalhar com dlls de terceiros se houver uma clara distinção entre o que é seu código e o que é deles - especialmente quando você vem substituí-lo ou modificá-lo.

    
por 08.09.2011 / 00:48
fonte
2

heres o que eu faço: Eu crio uma pasta de solução para minhas montagens de terceiros, então eu as adiciono ao controle de origem e as verifico. Dessa forma, elas são distribuídas com o meu projeto. Naturalmente, tudo isso está sujeito às licenças de distribuição das várias montagens de terceiros.

Eu odeio quando executo um projeto Open Source e depois tenho que ir e caçar assemblies - especialmente quando esses assemblies podem não estar mais disponíveis.

    
por 08.09.2011 / 00:50
fonte
2

Se o licenciamento permitir a inclusão dos binários no seu controle de origem e a sua distribuição, faz muito sentido incluí-los por alguns motivos. Em primeiro lugar, a facilidade de desenvolvimento em você - você não precisa rastrear uma dependência toda vez que quiser invadir uma máquina diferente. O segundo é a facilidade de desenvolvimento em pessoas que também hackeavam sua biblioteca - elas não terão que passar pela mesma ginástica. Finalmente, e talvez mais importante, garante que você tenha a versão correta da biblioteca viajando com seu código.

No caso do JSON.NET, acredito que seja licenciado pelo MIT, o que significa que você pode definitivamente fazê-lo sob uma perspectiva legal. Adicionar fora De preferência via nuget, então eu não tenho que baixá-lo duas vezes, se eu não precisar dele.

    
por 08.09.2011 / 00:48
fonte

Tags