La mia domanda riguarda il modo in cui le spinte di ramo funzionano esattamente; Mi sono imbattuto in qualcosa che per me non ha senso logico e in quanto tale mi piacerebbe una spiegazione sul perché sto vivendo questo comportamento.
Ho due rami: master
e dashboard
.
I am on (check out) dashboard
. Apporto alcune modifiche e (usando il terminale) scrivo quanto segue:
git add file1.R
git commit -m "Updated loop."
git push origin dashboard
La mia comprensione è che questo ora spinge le modifiche confermate nel mio repository sotto il ramo dashboard
.
Tuttavia, per curiosità, ho provato anche questo (mentre ancora controllato su dashboard
:
git add file1.R
git commit -m "Updated loop."
git push origin master
Nonostante specifichi che voglio spingere a master
, le modifiche confermate sembrano essere state trasferite a dashboard
perché quando controllo master
(sia tramite una GUI che git log -1
), vedo che il le modifiche non sono state trasferite a master
, ma a dashboard
.
In quanto tale, qual è la rilevanza di specificare quale ramo spingere? Il motivo per cui lo chiedo è perché sembra che il ramo in cui vengono trasferite le modifiche confermate corrisponda a qualsiasi ramo al momento ho estratto / sto spingendo da.
git push
equivale a digitare git push origin master
/ git push origin dashboard
(a seconda del ramo che ho estratto)?
Sarebbe bello capire esattamente cosa sta succedendo qui.