Eu quero bifurcar no Github a estrutura de teste java TestNG (licença Apache 2) para poder adicionar / alterar algumas pequenas coisas para atender às minhas necessidades.
É improvável que todas as minhas alterações sejam aprovadas no projeto principal ou que outras pessoas usem minha bifurcação. Isso não seria de forma alguma uma competição para o projeto principal.
Agora, em termos de nomeação, quero alterar o nome do artefato (testng-minhaempresa) ou a versão (6.8.minhaempresa) para que não haja confusão com a versão oficial no meu repositório maven. Isso seria considerado má etiqueta? Se sim, qual é a melhor abordagem para distinguir seu garfo?
open-source
github
etiquette
forking
Bogdan Calmac
fonte
fonte
Respostas:
Afaste-se e faça o seu pior / melhor.
O software de código aberto sempre foi sobre permitir que os indivíduos se adaptassem, mudassem e desafiassem as convenções. A parte difícil de criar um projeto é desenvolver uma nova comunidade ao seu redor que acredite no que você está fazendo.
Por exemplo, eu poderia fazer o download do código-fonte do Apache, fazer algumas modificações e chamá-lo de a próxima grande novidade. a comunidade principal do Apache.
Referência: Game of Thrones.
Em vez de fazer o fork do TestNG, pode ser mais simples escrever módulos / complementos sobre ele no Repo existente, dessa forma, você só precisará manter seu próprio código.
Como alternativa, se você sentir a necessidade de alterar o TestNG, talvez seja simplesmente a ferramenta errada para o trabalho.
[Aviso, eu nunca ouvi falar do TestNG até agora]
fonte
Projetos de código aberto devem ser avançados. O melhor de projetos de código aberto é que eles incentivam a colaboração externa. Quando você decide bifurcar um projeto, simplesmente declara que tomou a iniciativa de produzir seu próprio "sabor" ou "interpretação" do projeto. Muitas equipes acabam criando seus próprios projetos para expandir a base do projeto para vários propósitos.
Exemplo: Webkit e Blink
No que diz respeito aos nomes, você quer ser o mais claro possível. As práticas básicas de nomenclatura no desenvolvimento são bastante ambíguas.
Vá para: Qual "convenção de nomenclatura de versão" você usa?
Se você fosse bifurcar, gostaria de indicar seu "Nome" e depois transmitir exatamente qual versão está usando.
Não vejo motivo para bifurcação, a menos que você planeje levar o projeto em uma direção fundamentalmente diferente da pretendida. Descobri que, na maioria dos casos, os recursos / modificações adicionados que eu proporia ofereciam uma grande oportunidade de aprendizado em ambas as direções. Pelo contrário, estou com Dave sobre a idéia de criar módulos separados para promover a modularidade, preservando a integridade do projeto principal.
fonte