2013-05-04 19 views
5

Vorrei fare qualcosa di simile:Qualsiasi scelta rapida Git per il ramo corrente e il ramo che tiene traccia?

$ git fetch origin 
$ git rebase -i origin/a_very_very_very_long_branch_name 

Dove, il mio nome sezione locale è come stessi a_very_very_very_long_branch_name.

Così quando eseguo questo tipo di comando, non voglio copiare e incollare ancora e ancora il nome del ramo lungo.

Esistono collegamenti per il nome del ramo corrente in Git?

+0

Se scheda fuori, dovrebbe completare automaticamente il nome del ramo. – wakooka

+0

@ jerome.s si, ma ho, o, diciamo, il progetto ha troppi rami (so che non va bene, ma C'est La Vie;() quindi sto ancora trovando le "scorciatoie" –

+0

potresti voler provare git-completion https://github.com/git/git/blob/master/contrib/completion/git-completion.bash –

risposta

4

Nel vostro esempio particolare, se il ramo sta inseguendo il ramo a distanza, si può solo fare

git fetch 
git rebase -i 

Senza parametri.

Nel caso in cui la filiale non sta monitorando il ramo a distanza, che può essere impostato facendo

git branch -u origin/a_very_very_very_long_branch_name 
+0

grazie mille! –

+0

Sebbene sia utilizzabile nel _esempio_ fornito, non è esattamente ciò che è stato chiesto: "scorciatoia per il nome attuale del ramo". (Sapevo che il TO aveva un problema X/Y perché voleva effettivamente conoscere il nome del ramo upstream/remoto, ma lo ignorerei poiché il testo è chiaro e la domanda è vecchia.) –

2

È sempre possibile creare un alias per eseguire il rebase in origine/ramo corrente;

git fetch ; git rebase -i origin/$(git rev-parse --abbrev-ref HEAD)

Oppure, se non specificamente bisogno della parte interattiva del rebase;

git pull --rebase

4

Se il ramo è impostato per seguire il ramo a distanza con lo stesso nome in origin, è possibile utilizzare @{u} come sottolineato in the manpage gitrevisions:

<branchname>@{upstream}, per esempio [email protected]{upstream}, @{u}

Il suffisso @{upstream} ad un branchname (breve modulo <branchname>@{u}) si riferisce al ramo che il ramo specificato da branchname è impostato per costruire in cima. Un nome di diramazione mancante è quello predefinito.

+0

Ora Posso fare 'git difftool @ {u}' per il ramo corrente e remoto diffrente – hIpPy

Problemi correlati