Come si crea un ramo Git remoto?
Ho creato un ramo locale che voglio 'spingere' a monte. C'è una domanda simile qui su Stack Overflow su come tracciare un ramo remoto appena creato.
Tuttavia, il mio flusso di lavoro è leggermente diverso. **Per prima cosa voglio creare un ramo locale, e lo spingerò a monte solo quando sono soddisfatto e voglio condividere il mio ramo.
- Come potrei farlo? (Le mie ricerche su Google non sembrano portare a nulla).
- Come potrei dire ai miei colleghi di tirarlo dal repository upstream?
aggiornamento con Git 2.0 c'è una risposta più semplice che ho scritto qui sotto: https://stackoverflow.com/a/27185855/109305
3021
3
Per prima cosa, create il vostro ramo localmente:
Il ramo remoto viene creato automaticamente quando lo spingi sul server remoto. Così, quando ti senti pronto, puoi semplicemente fare:
Dove `
è tipicamente
origin`, il nome che git dà al remoto da cui hai clonato. I tuoi colleghi possono quindi semplicemente tirare quel ramo, e viene creato automaticamente in locale.Nota comunque che formalmente, il formato è:
Ma quando ne omettete uno, si assume che entrambi i nomi dei rami siano gli stessi. Detto questo, come parola di cautela, non fate l'errore critico di specificare solo
:
(con i due punti), o il ramo remoto sarà cancellato!In modo che un successivo
git pull
sappia cosa fare, si potrebbe invece voler usareCome descritto sotto, l'opzione
--set-upstream
imposta un ramo upstream:Per ogni ramo che è aggiornato o spinto con successo, aggiunge l'upstream
Per prima cosa, devi creare il tuo ramo localmente
Dopo di che, puoi lavorare localmente nel tuo ramo, quando sei pronto a condividere il ramo, spingilo. Il prossimo comando spinge il ramo all'origine del repository remoto e lo traccia
I compagni di squadra possono raggiungere il tuo ramo, facendo:
Puoi continuare a lavorare nel ramo e spingere quando vuoi senza passare argomenti a git push (git push senza argomenti spingerà il master al master remoto, il tuo_branco locale al tuo_branco remoto, ecc...)
I compagni di squadra possono fare il push al tuo ramo facendo dei commit e poi fare il push esplicitamente
O tracciando il ramo per evitare gli argomenti di git push
Come indicato nelle risposte precedenti,
è sufficiente per spingere un ramo locale.
I tuoi colleghi possono tirare tutti i rami remoti (compresi quelli nuovi) con questo comando:
Poi, per apportare modifiche al ramo, il solito flusso: