Várias pessoas bifurcaram meu repositório do github, mas não foram buscadas e mescladas do upstream. Portanto, meu repositório original evoluiu significativamente desde que ocorreu o fork e, enquanto isso, essas pessoas estão mostrando uma versão antiga e desatualizada do meu trabalho, o que me faz parecer mal (por exemplo, o que eles estão exibindo está incompleto, contém bugs que eu fixo desde então, etc.).
Aparentemente, essas pessoas não entendem para que serve um garfo; eles apenas apertam o botão do garfo (talvez como uma maneira de dizer "isso é legal") e depois se afastam. Idealmente, o que eu gostaria é que eles mantenham seu fork atualizado do upstream ou façam uma contribuição significativa ou excluam o fork. Existe algo que eu possa fazer sobre isso? (Não existe, existe? Esse é apenas o preço de ser código aberto, não é?)
Respostas:
Torne seu repositório privado ou retire seu código do GitHub.
Sim. O ponto principal do código-fonte aberto é que outros são livres para alterá-lo e / ou redistribuí-lo. Dependendo da licença, você poderá aplicá-los a usar um nome diferente ao distribuí-la (se eles a modificaram, se não tiverem isso não se aplica). Não tenho certeza se o bifurcação é considerado redistribuí-lo ...
Você pode ler a Definição de código aberto e conferir algumas das licenças .
fonte
Não há como atualizar esses garfos, a menos que você envie um e-mail a cada um dos proprietários e peça que eles atualizem.
Eu não acho que você precise se preocupar com garfos desatualizados. Deixe-me explicar o porquê.
Para alguns antecedentes (embora você provavelmente saiba disso), eis como os garfos se acumulam: sempre que eu envio uma solicitação de recebimento a um projeto do GitHub, primeiro bifurcarei, envio a solicitação e esqueci minha bifurcação. Talvez eu nunca use as fontes do projeto novamente, por isso nunca as repito, a menos que envie outra solicitação de recebimento. Como resultado, agora tenho algo como 50 garfos e contando por aí, nenhum dos quais está atualizado. Eu nunca me preocupei em excluir nenhum deles, simplesmente porque não há motivo para isso.
Dependendo do fluxo de trabalho, algumas pessoas podem clonar e clonar apenas caso desejem enviar uma solicitação de recebimento, e é por isso que parece que "eles apenas pressionam o botão de forquilha".
Como resultado, todos os projetos ativos acumulam garfos desatualizados: Se você verificar os garfos do Rails , verá que praticamente todos eles estão desatualizados.
Por isso, quando navego no GitHub, presumo que os garfos de outras pessoas geralmente sejam apenas cópias descartáveis, em vez de projetos com manutenção adequada. Então, se eu vir "bifurcado de" no topo, vou imediatamente para o rio acima. Acho que nunca clonei de um fork, a menos que o upstream explicitamente me dissesse que o desenvolvimento continua no fork.
Resumindo: não fique constrangido com todas as versões antigas do seu software. Ninguém os usa de qualquer maneira. Pense neles como um distintivo de popularidade para o seu projeto. ;-)
fonte
Eu acho que a mentalidade é algo como:
E por uma causa que deixa muitos garfos obsoletos por perto, mas talvez algum dia um desses garfos se torne uma contribuição.
fonte
Não, não há nada que você possa fazer sobre isso.
Aqui está um artigo falando sobre esse "problema" específico http://andrewwilkinson.wordpress.com/2010/01/27/where-github-possibly-went-wrong/
Eu estou em um meio termo. Eu gosto que os garfos sejam fáceis de criar e acho que permite que as pessoas brinquem e modifiquem o código com facilidade, e recuem se quiserem. Mas acho que a interface do github em cima dos garfos é falha. Deveria ser muito fácil determinar de qual garfo (ou o original) é o que você provavelmente deve usar / retirar. Imo, seria fácil determinar isso analisando o número de confirmações e quão recentes foram as confirmações em cada bifurcação.
fonte