2012-02-21 4 views
13

Sto cercando di capire il miglior flusso di lavoro per mantenere una copia locale di un progetto ospitato da github (moodle) con personalizzazioni, pur mantenendo la capacità di mantenere aggiornata la nostra copia. Dimmi se quello che sto pensando di fare è completamente folle:Flusso di lavoro Git: biforcazione di un progetto e mantenimento di una copia modificata locale, ma aggiornamento

  1. Forcella del progetto (github.com/moodle/moodle -> github.com/sfu/moodle)
  2. Creare un telecomando a monte (git remote add upstream git: //github.com/moodle/moodle.git & & git fetch upstream)
  3. Crea una filiale per il nostro sviluppo personalizzato e mantieni il master incontaminato.
  4. Quando vogliamo aggiornare il nostro forcella, aggiornare il ramo incontaminata (git maestro checkout & & git fetch a monte & & git merge monte/master) Master
  5. Unisci nella nostra filiale di personalizzazioni (git checkout personalizzati & & git unione master)

Ha senso?

risposta

2

Sì, ha senso. Sebbene il passaggio n. 4 possa essere leggermente semplificato in git checkout master && git pull --ff-only upstream master.

Il --ff-only assicura che non venga eseguito alcun commit di unione nella copia pristine.