persone forzano il mio progetto ma non recuperano da upstream - cosa posso fare?

7

Diverse persone hanno biforcuto il mio repository github ma non sono state recuperate-unite da upstream. Quindi il mio repository originale si è evoluto in modo significativo dal momento in cui la forcella ha avuto luogo, e nel frattempo queste persone stanno mostrando una vecchia versione obsoleta del mio lavoro, il che mi fa sembrare pessimo (ad esempio ciò che stanno visualizzando è incompleto, contiene bug che ho corretto da allora, ecc.).

Queste persone apparentemente non capiscono a cosa serve una forchetta; semplicemente spingono il pulsante della forchetta (forse per dire "questo è bello") e poi si allontanano. Idealmente, quello che mi piacerebbe fosse che mantenessero la forchetta aggiornata da upstream o fornissero un contributo significativo o eliminassero la forchetta. C'è qualcosa che posso fare per questo? (Non c'è, c'è? Questo è solo il prezzo di essere open source, non è vero?)

    
posta matt 11.03.2012 - 20:53
fonte

4 risposte

11

Is there anything I can do about this?

Rendi privato il tuo repository o estrai il tuo codice GitHub.

This is just the price of being open source, isn't it?

Sì. L'intero punto dell'Open Source è che gli altri sono liberi di cambiarlo e / o ridistribuirlo. A seconda della licenza, potresti essere in grado di imporli di utilizzare un nome diverso quando lo si distribuisce (se lo hanno modificato, se non lo hanno questo non si applica). Non sono sicuro che la biforcazione sia considerata ridistribuita anche se ...

Potresti leggere la definizione di Open Source e controllare alcuni licenze .

    
risposta data 11.03.2012 - 21:04
fonte
9

Non è possibile aggiornare questi fork, a meno che non invii un'email a ciascuno dei proprietari e chieda loro di aggiornarli.

Non penso che tu debba preoccuparti delle forcelle obsolete, però. Lasciami spiegare perché.

Per alcuni sottofondi (anche se probabilmente lo sai), ecco come si accumulano le forche: Ogni volta che invio una richiesta di pull a un progetto GitHub, prima forzo, invio la richiesta, e poi dimentico della mia forcella. Potrei non usare mai più le sorgenti del progetto, quindi non lo rimprovererò mai, a meno che non invii un'altra richiesta di pull. Come risultato ora ho qualcosa come 50 forchette e contando in giro, nessuno dei quali è aggiornato. Non mi sono mai preso la briga di cancellare nessuno di questi, semplicemente perché non c'è motivo di farlo.

A seconda del loro flusso di lavoro, alcune persone potrebbero eseguire fork-then-clone nel caso in cui vogliano inviare una richiesta di pull, motivo per cui sembra che "semplicemente spingono il pulsante fork".

Di conseguenza, tutti i progetti attivi hanno borsette obsolete che si accumulano: se controlli i forchette di rails , tu " scopriremo che praticamente tutti non sono aggiornati.

Per questo motivo, quando navigo su GitHub presumo che le forchette di altre persone siano generalmente solo copie usa e getta, piuttosto che progetti mantenuti correttamente. Quindi, se vedo "forked from" in alto, andrò immediatamente a monte. Non penso di aver mai clonato da un fork, a meno che l'upstream non mi abbia detto esplicitamente che lo sviluppo continua nel fork.

Quindi riassumendo: non essere imbarazzato con tutte quelle vecchie versioni del tuo software in giro. Nessuno li usa comunque. Pensa invece a loro come a un distintivo di popolarità per il tuo progetto. ; -)

    
risposta data 12.03.2012 - 15:30
fonte
6

Penso che la mentalità sia qualcosa del tipo:

Uh, I think this sounds like a cool project I can hack on when I get the time, maybe I can even make a major contribution, let me just fork it for now...

E di causa che lascia molte forcelle stantie intorno, ma forse a volte una di queste forcelle diventerà un contributo.

    
risposta data 12.03.2012 - 08:55
fonte
3

No, non c'è nulla che tu possa fare al riguardo.

Ecco un articolo che parla di questo particolare "problema" link

Sono in una via di mezzo. Mi piace che le forchette siano facili da creare e penso che consenta alle persone di giocare e modificare facilmente il codice e di respingerlo se lo desiderano. Ma penso che l'interfaccia di github in cima alle forcelle sia difettosa. Dovrebbe essere molto facile determinare quale biforcazione (o l'originale) è quella da cui probabilmente dovresti usare / deviare. Imo sarebbe facile determinarlo osservando il numero di commit e la frequenza dei commit su ciascun fork.

    
risposta data 11.04.2014 - 12:27
fonte

Leggi altre domande sui tag