biforcarsi bene un progetto open source

26

È il momento.

Hai lavorato duramente per aggiungere la tua visione al progetto open source che ami, sul quale hai lavorato, discusso e al quale hai contribuito inestimabili quantità di codice e intuizione.

Ma non funzionerà con gli sviluppatori esistenti.

Hai finalmente bisogno di inserire il codice.

Come fai questo e rimani nei migliori termini possibili con il progetto esistente? Come non dire " Oh sì? Forchetta! "

A parte il meccanismo di cross-polination e assumendo che il ragionamento per il biforcazione sia solido, logico e accettabile, quali problemi emergono?

Concorso? Resing delle risorse? Bracconaggio dell'utente?

Come procedi in questo processo discutibilmente difficile e lungo finché non ti diversifichi abbastanza da non essere più visti come problemi?

Piuttosto che discutere il ragionamento alla base della decisione, supponiamo che tu sia già stato convinto che la forking del codice sia la migliore soluzione complessiva, e ora il punto è andare avanti nel miglior modo possibile.

-Adam

    
posta Adam Davis 30.01.2009 - 23:48
fonte

3 risposte

20

Vuoi lavorare sul tuo fork del codice o vuoi frammentare la community?

Abbiamo internamente biforcato un paio di progetti. Faremo un cambiamento, lo spediremo ai proprietari, direbbero "no grazie" e faremo spallucce e lo porteremo internamente e lo manterremo noi stessi.

Mente, questi non erano progetti enormi, ma proprio così. Non abbiamo pubblicato nulla, ospitato un sito o altro. Spingiamo la sorgente a valle verso i nostri client con il resto della base di codice.

Semplicemente non c'era nessuna richiesta per noi di "promuovere" i nostri cambiamenti in maniera più pubblica rispetto alla mailing list di sviluppo.

Se vuoi mantenere la parità con l'originale, dovrai essere aggressivo sulla gestione delle patch, sulla fusione e altro.

Se non vuoi disturbarti, allora ... non farlo. Non c'è motivo di renderlo pubblico a meno che non si tratti dell'intenzione generale, piuttosto che semplicemente di aver bisogno di una versione biforcuta per i propri progetti.

La fonte è lì per essere usata, quindi usala.

    
risposta data 31.01.2009 - 01:07
fonte
7

Nella maggior parte dei progetti open source, la parola "fork" non è spesso percepita calorosamente, ho fatto personalmente l'esperienza che chiedere di lavorare su un "topic branch" per sviluppare una serie specifica di funzionalità è molto più accolto.

E questo ha senso solo: i "forks" sono per natura potenziali concorrenti, mentre i "topic branch" sono - almeno per design - destinati a essere poi uniti / restituiti al progetto.

    
risposta data 13.03.2009 - 22:06
fonte
5

Prima di tutto, vuoi solo fare un refactoring sperimentale. Sai, solo alcune idee con cui vuoi giocare. Ma questi cambiamenti possono richiedere la rottura della compatibilità con il ramo principale del progetto, quindi non si vuole impegnare le modifiche lì.

Quindi crea la tua forchetta. Ovviamente sei uno sviluppatore responsabile, quindi metti tutto il codice sotto controllo di revisione. Usa Launchpad o SourceForge o Google Code o altro.

Mentire per un po 'e basta lavorare su di esso da soli. Quindi chiedi a qualcuno di cui ti fidi di "dare un'occhiata" a ciò che hai creato. Poi un altro qualcuno. Qualche tempo dopo, crea un semplice sito web di progetto ovunque ti mantieni la fonte.

A quel punto, probabilmente anche le persone che pensavi non stessero lavorando al progetto originale, quindi non ci sarà più nessuno da offendere. Il progetto originale diminuirà di attività man mano che il tuo nuovo progetto avrà seguito.

Il commento di re codelogic:

A destra; Supponevo che le persone che l'OP vuole abbandonare non siano in grado di sostenere il progetto da soli.

Ho sentito dire che "le organizzazioni sopravvivono, le persone no". Cioè, nessuna singola persona è così critica per un progetto che la squadra rimanente non può compensare il vuoto lasciato dalla partenza di quella persona.

Tuttavia, nell'open source, a volte è vero che nessuno ha la volontà, il talento e il tempo per eseguire un progetto senza il fondatore.

    
risposta data 31.01.2009 - 00:18
fonte

Leggi altre domande sui tag