Sto cercando di trovare la sintassi per unire un commit taggato su un altro ramo. Immagino che sia semplice ma i miei deboli tentativi di ricerca non lo trovano.
Sto cercando di trovare la sintassi per unire un commit taggato su un altro ramo. Immagino che sia semplice ma i miei deboli tentativi di ricerca non lo trovano.
Risposte:
Intendi questo?
git checkout destination_branch
git merge tag_name
Ricorda che prima di unirti devi aggiornare il tag, è abbastanza diverso dai rami ( git pull origin tag_name
non aggiornerà i tuoi tag locali). Pertanto, è necessario il seguente comando:
git fetch --tags origin
Quindi è possibile eseguire git merge tag_name
per unire il tag su un ramo.
git remote add upstream git@github.com/org/repo
seguito da git fetch --tags upstream
per farlo funzionare.
Basta integrare la risposta.
Unire l'ultimo tag su un ramo:
git checkout my-branch
git merge $(git describe --tags $(git rev-list --tags --max-count=1))
Ispirato da https://gist.github.com/rponte/fdc0724dd984088606b0
Questo è l'unico modo completo e affidabile che ho trovato per farlo.
Supponiamo di voler unire "tag_1.0" in "mybranch".
$git checkout tag_1.0 (will create a headless branch)
$git branch -D tagbranch (make sure this branch doesn't already exist locally)
$git checkout -b tagbranch
$git merge -s ours mybranch
$git commit -am "updated mybranch with tag_1.0"
$git checkout mybranch
$git merge tagbranch
Sono in ritardo al gioco qui, ma un altro approccio potrebbe essere:
1) crea un ramo dal tag ( $ git checkout -b [new branch name] [tag name]
)
2) crea una richiesta pull da unire con il tuo nuovo ramo nel ramo di destinazione