Qual é a etiqueta de renomear um fork de código aberto?


29

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?


9
Veja também Projeto de bifurcação no processo do Github e a interseção de etiqueta de etiqueta e bifurcação (que atualmente tem sua pergunta e a vinculada).

Respostas:


5

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]


-1. Isso não responde de forma alguma à pergunta.
Jon Bentley

2

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.

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.