2016-03-29 14 views
0

Ein gemeinsamer Teil meines Workflow ist:Ein git Befehl neuen lokalen Zweig zu erstellen, drücken Sie auf dem Ursprung, Herkunft verfolgt

git checkout -b new_branch origin/master 
git push origin new_branch 
git branch --set-upstream-to origin/new_branch 

Gibt es eine Möglichkeit, dies zu einem Befehl nach unten gekocht werden könnte? Ich möchte in der Lage sein, ein Alias ​​so einrichten, dass diese schnell mit etwas getan werden kann, um Typen wie:

gitnew new_branch parent_branch 

Eine bash Lösung akzeptabel ist, aber wäre nett, wenn es rein git ist.

Antwort

2

Is there a way this could be boiled down to one command?

Yep, fügen && zwischen jedem Befehl

git checkout -b new_branch origin/master && 
git push origin new_branch && 
git branch --set-upstream-to origin/new_branch 

auf einzelne Zeile


git alias

können Sie gi verwenden t Alias, um auch diesen Befehlssatz zu definieren.

git config --global alias.newb "!f(){ git checkout -b $1 origin/$2 && git push origin &1 && git branch --set-upstream-to origin/$1 };f" 

$ 1 = Name der Niederlassung
$ 2 = Name der Mutter Zweig

Wie verwenden:

git newb new_branch_name master 
+0

Hätten Sie etwas dagegen mit $ 1, um die anderen Instanzen von new_branch zu ersetzen? Sind die Zitate, die Sie um den ersten $ 1 haben, auch notwendig? –

+0

Es ist nur ein Beispiel, um Ihnen zu zeigen, wie es geht. Sie brauchen die Anführungszeichen eigentlich nicht. Sie sind da, falls Sie Leerzeichen haben – CodeWizard

+0

bekommen den Fehler: Erweiterung des Alias ​​'newb' fehlgeschlagen; 'find' ist kein git-Befehl –