Progetto di forking sul processo Github


25

C'è un progetto su Github che mi piace soprattutto e che voglio usare. Ci sono alcune cose che voglio fare in modo diverso / rimuovere che non ha senso per quello che voglio / ho bisogno. Voglio anche aggiungere alcune cose.

A quanto ho capito, dovrei rovesciare il progetto e posso apportare tutte le modifiche che desidero e rimandare al mio fork. Da lì, voglio anche occasionalmente inserire nel mio fork le modifiche rispetto al progetto originale in modo da ottenere le ultime correzioni / funzionalità degli errori.

Sono off-base di come penso che dovrebbe funzionare? Come porterebbe le modifiche rispetto al progetto originale?


Risposte:


18

Fai la forchetta, quindi fai subito un ramo.

Ora hai un master "intatto" che può essere aggiornato da solo per ottenere le ultime modifiche con git pulls.

Mantieni la tua filiale locale senza spingere sul telecomando e puoi fare ciò rebaseche farà quanto segue per te:

  • salva le modifiche
  • applica le ultime modifiche dal master al tuo ramo (quelle che sono arrivate dall'aggiornamento dal telecomando)
  • riapplica le modifiche, in cima al codice che è stato aggiornato dal master (o altro ramo originale).

Quando hai finito con esso, fondilo nuovamente nel master (o in qualsiasi ramo da cui proveniva il fork iniziale) localmente e quindi invia la richiesta pull al proprietario effettivo per inserirlo.

È comunque un flusso di lavoro (o "forkflow"), a quanto ho capito. Altri sono invitati a commentare o correggere o aggiungere ulteriori dettagli.


3
Sembra un po 'fuori tema. Affronta il "come" senza molte spiegazioni di ciò che stai facendo ed evita di entrare nella domanda sull'etichetta. Potresti migliorare questo dando una panoramica di alto livello di ciò che stai realizzando e spiegando perché è buona educazione farlo in questo modo.
Justin Morgan,

10

Fondamentalmente ce l'hai: una volta creata una forcella, è la tua piccola sandbox.

Penso che la cosa principale che devi fare sia creare immediatamente un ramo dopo il fork, al fine di mantenere la linea di sviluppo originale separata dalla tua. Che si sviluppi in questo ramo o in master è in gran parte una questione di gusti personali. L'unica cosa che mi impedirebbe di svilupparmi in master è che è troppo facile fare un "git pull" e sbagliare.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.