Ben tornato.
Continuiamo dal nostro video precedente per parlare di un flusso di lavoro più avanzato e ottenere e GitHub.
Ora, fino a questo punto, sia io che Marcy abbiamo appena lavorato qui, direttore di filiale.
Che cosa significa?
Beh, dice rami, ma qui vedo solo il maestro.
E potresti aver notato un problema con il modo in cui stavamo facendo le cose.
Cioè se è il mio primo giorno di lavoro e ho appena cambiato il titolo.
Ma forse non vogliamo nemmeno questo cambiamento.
Forse questo rompe il nostro marchio o rompe la nostra app.
Ma sono stato in grado di farlo così facilmente da cambiarlo in m. forse Marsi non sapeva nemmeno che ho aggiunto quella
modifica e questo è un grosso problema, giusto?
Non vuoi mettere le cose in ciò che chiamiamo produzione, in ciò che vede l'utente.
Se sta per rompere il nostro sito web.
Se sei una grande azienda come Facebook, ciò potrebbe significare milioni di dollari in entrate perse,
anche se hai un bug che dura poche ore.
Quindi ti mostrerò un flusso di lavoro più realistico che avrai, e cioè con la ramificazione.
No, mostrati cosa intendo.
Ho qui una visuale di ciò in cui è davvero, davvero bravo.
Finora abbiamo lavorato su quello che chiamiamo master, cioè il ramo master.
Pensa al ramo principale come all'autorità.
Questo è il modo giusto in cui dovrebbe apparire la nostra app o il nostro sito web.
E fino ad ora, quando ho creato il fantastico titolo in background, beh, sono passato da un generatore di
sfondo a un fantastico generatore.
E poi quando Marsi l'ha cambiata in maiuscolo, siamo andati qui e siamo andati in modo lineare
da un capo all'altro, dall'altro all'altro.
Ma come ho detto, questo è un po' un problema.
Quindi una cosa migliore da fare è ciò che chiamiamo branching.
Se volessi cambiare il titolo, creerò un ramo e lo chiamerò solo piccola funzionalità, ad esempio, e
lavorerò su quel ramo da solo senza influenzare il ramo principale, ciò che l'utente vede.
E.
Solo quando è finito, quando Marsi l'ha recensito, quando l'abbiamo testato e tutti i membri
della squadra sono a posto, lo riportiamo in M..
E puoi vedere qui con la grande funzionalità, puoi andare avanti per molto tempo sul tuo ramo
e solo quando hai finito fai ciò che chiamiamo unione in M..
Ti mostrerò come funziona oggi.
Chiuderò questo e ricorderò il nostro esempio, qui abbiamo il computer di Marcy con tutti i file e qui
abbiamo il mio computer con tutti i file.
Entrambi abbiamo impostato la nostra postazione di lavoro.
E ora vedi cosa significa master nel mio terminale, e ti mostrerò nelle note in seguito come puoi impostare questo
in modo che ti dica su quale ramo sei.
Ma possiamo vedere che siamo entrambi su M..
Quello è il mio computer.
E anche il computer di Marcy è un M. Vogliamo assicurarci di essere entrambi aggiornati con l'ultimo GitHub.
Quindi Marcy otterrà il pull e anch'io farò il pull.
E diciamo che ora sto lavorando su una nuova funzionalità, e poiché è un flusso di lavoro migliore non lavorare sul master
e questo è un buon consiglio, generalmente non lavorare sul master, devi sempre ramificare.
Se ottengo Branch, mi mostreranno che, beh, ho solo un ramo ed è master, ma possiamo
aggiungerlo.
Possiamo dire di ottenere una nuova filiale o una piccola funzionalità.
E ora se prendo Branch.
Vedo che ho poche funzionalità, ma master è evidenziato perché attualmente sono un master, quindi nel
modo in cui andrei al ramo delle piccole funzionalità, dirò ottieni Check-Out.
Piccola caratteristica.
Ed ecco fatto, passa alla piccola funzionalità di branch, e ora sono su una piccola funzionalità di branch.
Quindi quello che ho fatto è che mi sono diramato da M. e ora ho creato una piccola funzione.
Creiamo un po' di cambiamento, dirò nella piccola funzione, cambieremo il
titolo dello sfondo di accesso corrente per dire che questo è lo sfondo.
Vado al sicuro qui e, di nuovo, eseguo il mio semplice flusso di lavoro che abbiamo fatto nell'ultimo video per ottenere lo stato.
Vedo che abbiamo l'indice che un piccolo cambiamento per cancellare in modo che possiamo vedere.
Quindi, ora che abbiamo apportato questa modifica, aggiungiamo.
E ancora, ottieni lo stato per assicurarti che tutto sia andato a buon fine.
Sì, siamo pronti per eseguire il commit indicizzabile, quindi riceveremo il messaggio di commit che cambierà.
Testo.
Perfetto.
Chiariamo questo e ora di nuovo, per far sapere a GitHub dei cambiamenti che dobbiamo fare, ottenere
push, quindi faremo push.
Va bene, andiamo su GitHub e vediamo cosa è successo.
Vediamo che ora abbiamo questa barra gialla che è appena apparsa e dice che hai recentemente spinto i rami.
Quindi, se clicco su questo pulsante verde qui, confronta, pull request.
Mi mostra i cambiamenti che ho, ovvero ho cambiato il titolo e qui posso far sapere
a Marcy, dicendo: Marci, ho cambiato il testo.
Cosa ne pensi?
E faccio clic su Crea una richiesta Pull.
E ora ho il mio PR e vedete qui come dice Mersch pull request?
Bene, se torniamo al nostro diagramma, ho creato questa piccola funzionalità e ora dico, ehi, Marci,
ho appena apportato questa nuova modifica.
Cosa ne pensi?
Va bene per me unirlo in M..
E quello che accadrà qui molto probabilmente è che Marci verrà a vedere questa richiesta di pull.
Vedete che siamo sulla richiesta pull, ABS, quindi potrà vederli.
E vedere Andray ha appena fatto questo cambiamento.
Guarderà attraverso i cambiamenti.
E lei dirà, hmm, beh, se le piace, potrebbe essere tipo, ha un bell'aspetto, può fare clic su inizia
una recensione e sai, le piace.
Quindi lei semplicemente approverà.
Ora, Marsi o me stesso, di solito non vuoi unire le tue richieste pull, qualcuno nel team lo fa.
Ora può solo dire marzo, tirare, richiedere, confermare, unire.
Ed ecco fatto.
A volte come eliminare il ramo dopo, quindi puoi semplicemente fare clic su Elimina qui.
Se torno al codice.
Bene, non ho più i rami perché l'ho appena cancellato, ma nel mio master, se vado su Index
Simmel, vedo che questo è lo sfondo.
Quindi ora Marci può andare al suo progetto e dire, prendi la piscina.
E di nuovo.
Ha l'ultimo aggiornamento.
Ora, parliamo di alcuni conflitti che possono sorgere ora, diciamo che Marsi vuole cambiare qualcosa e anche
io cambio la stessa cosa e otteniamo il nostro conflitto Mirch.
Vediamo cosa succede.
Quindi diciamo che Marsing vuole cambiare, creare una nuova funzionalità dicendo che la chiameremo una grande funzionalità.
E lei dirà, ottieni Check-Out o ottieni una grande funzionalità di Branch.
Dirà, dai un'occhiata alla grande funzionalità.
E se ottengo Branch, vediamo che c'è un nuovo ramo qui.
Chiariamo questo e lei dirà qui che vuole cambiarlo di nuovo in sfondo, colore o generatore di sfondo, perché tutti gli utenti
si lamentano che il titolo è cambiato e a loro piace il vecchio titolo.
Quindi l'ha cambiata.
Ha fatto il get add.
Ottieni impegno.
Ritorno al vecchio titolo.
Perfetto, e poi si farà dare una spinta.
Chiariamolo prima, in realtà, e otteniamo una spinta.
La prima volta che ottieni questo, potresti ricevere questo errore che dice che non c'è upstream, devi solo copiare
il codice che ti danno qui.
Perfetto.
Ora, se torno indietro.
Il generatore di sfondo, vedo la grande richiesta di pull di funzionalità qui.
E solo per mostrarti che puoi avere più commenti, diciamo che Marcy decide di oh, questo sono io, Marcy
decide di aggiungere un punto esclamativo qui.
Può solo dire di nuovo, lo salva.
Questo è chiaro.
E lei dirà, ottenere l'annuncio.
Impegnati, lo fai molto, quindi diventi davvero, davvero bravo dopo aver lavorato
in un'azienda per un po' e lei dirà X esclamativa aggiunta.
Oops, non è quello che voglio fare, ottenere il commit.
Kimmet.
Esclamazione aggiunta.
E riceverà di nuovo la spinta.
E torniamo a chiedere aiuto.
Se osserviamo la richiesta del pool, in realtà saranno entrambi ripristinati a tutti i titoli e
aggiunto un punto esclamativo, e vediamo qui che entrambe le modifiche creano la richiesta di pool che necessita di modifiche.
Andre.
Quindi, mentre questa povera richiesta è là fuori.
Ho deciso di iniziare un nuovo ramo chiamato chiamiamolo solo conflitto per ora.
E otterrò un conflitto di check-out.
E ora nel ramo dei conflitti.
Decido di cambiare.
Questo per rimuovere completamente il generatore a carbone.
Dico che.
Ancora una volta, controllo il mio stato e indico che il mio file è stato modificato.
Quindi, mentre sta succedendo, chiedo a Marcy di fondersi, per estrarre la richiesta.
Quindi è entrata in Mascia.
La sua richiesta è arrivata.
E ora, se torno al mio conflitto, ottengo uno status.
E dobbiamo aggiungerli, quindi aggiungi e ottieni il commit in un breve messaggio qui, controlla.
E ora se torno da M..
Oh, devo ottenere di nuovo il master di checkout prima di inviare le mie modifiche, voglio assicurarmi di avere l'ultima versione
di un master in modo da non cambiare nulla.
Non avrò conflitti.
Quindi mi farò tirare per avere l'ultima.
E ora vado a fare il checkout.
Ramo di conflitto.
E posso fare questo commento ottenere.
Unisci.
M. Quindi sto dicendo di fondere tutto ciò che è un maestro in conflitto.
Marcy ha lavorato alla grande funzionalità e l'ha fusa, quindi ora Master ha il ramo delle grandi funzionalità.
Ho anche creato un altro ramo e ho lavorato da solo sul ramo dei conflitti.
E il ramo del conflitto non sa nulla del masochismo, dicendo, ehi, qualunque cosa sia
un maestro in questo momento, che include la grande caratteristica su cui ha lavorato Marsi, inseriscilo e assicurati che non ci
sia conflitto.
Quindi lo faccio.
E oh, ottengo conflitto, conflitto di Merche e indice, non Mafa.
Ora, se clicco effettivamente su Testo sublime, lascia che lo apra in modo che tu possa vedere meglio.
Oh, cavolo, ho questa strana sintassi.
All'inizio è travolgente, ma è facile vedere cosa succede in testa è dove si trova il mio
ramo e mi mostra che qui fino alla fine non ho più l'H1.
Ma nel ramo principale, abbiamo un generatore di sfondo.
Ora posso parlare con Marcy e dire, ehi, Marcy, vuoi mantenere il titolo del generatore?
E lei dirà, sì, quella era la cosa giusta da fare.
Non cambiare lo sfondo.
Bene, in tal caso, rimuovo semplicemente queste righe.
E rimuovi questo.
E salva ora se ottengo.
Stato ora.
OK, abbiamo lo stato modificato qui.
Fammi solo rimpicciolire di nuovo così puoi vedere fammi chiarire questo.
Quello che facciamo ora è che dobbiamo aggiungere di nuovo perché abbiamo apportato queste modifiche e dobbiamo risolvere
il problema di fusione della cometa.
E ho dimenticato di riprovarci.
E.
Conflitto che risolve il problema del matrimonio che è chiaro qui e ottieni lo stato.
Niente da confrontare tra lavoro e pulizia, e se ottengo push, beh, di nuovo, ottengo questo errore, ma
voglio mostrarti questa volta se ottengo il conflitto di origine push.
Ora funziona, torniamo a GitHub.
Guarda che tipo di cose abbiamo, abbiamo il ramo del conflitto, e se guardiamo il
ramo del conflitto ora, beh, non è cambiato nulla perché, beh, ho appena ripristinato tutte le mie modifiche.
Quindi è completamente vuoto.
Non ci sono cambiamenti ora.
Quindi Marcio direbbe, ehi, volevi fare questa foto?
È vuoto.
Tutti vedono questo messaggio da parte mia e posso andare avanti, e questo è praticamente il flusso di lavoro
che vedrai e otterrai.
Lascio i comandi per te dopo questo.
Ma vedi, è molto, molto bello lavorare con te che impari alcuni comandi e
finché hai questo modello visivo di ogni volta che lavori su qualcosa, crei sempre un ramo.
Lo intitoli con qualsiasi caratteristica su cui stai lavorando.
E ogni tanto vuoi estrarre master e unire master nel tuo ramo per assicurarti di non perdere nessun aggiornamento che
altri sviluppatori o compagni di squadra hanno fatto.
Una volta che hai finito con la tua funzione, fai una richiesta pull facendo get push e quella richiesta pull i
tuoi commenti e le persone esamineranno le modifiche al file.
E se vogliono che tu faccia alcune modifiche, puoi farlo di nuovo, ottenere l'aggiunta, ottenere il commit,
infine apportare le modifiche e quindi puoi unire, estrarre la richiesta.
E una volta fatto, poi tutti gli altri nella squadra, ora c'è un nuovo maestro.
Quindi anche tutti gli altri membri della squadra dovrebbero ottenere il tiro.
Ci vuole un po' di tempo per abituarsi, ma è davvero un bel flusso
di lavoro per assicurarsi che tutti i membri del team lavorino sullo stesso file, sugli stessi progetti, senza causare errori
e assicurarsi che tutti collaborino bene.
E questo è tutto, spero che lo trovi utile.
Ci vediamo alla prossima.
Ciao ciao.