Ich fand git examples with fzf(fuzzy finder) und sie funktioniert gut. wie:Wie bekomme ich einen Git-Zweig mit Fuzzy-Finder?
# fbr - checkout git branch
fbr() {
local branches branch
branches=$(git branch -vv) &&
branch=$(echo "$branches" | fzf +m) &&
git checkout $(echo "$branch" | awk '{print $1}' | sed "s/.* //")
}
# fbr - checkout git branch (including remote branches)
fbr() {
local branches branch
branches=$(git branch --all | grep -v HEAD) &&
branch=$(echo "$branches" |
fzf-tmux -d $((2 + $(wc -l <<< "$branches"))) +m) &&
git checkout $(echo "$branch" | sed "s/.* //" | sed "s#remotes/[^/]*/##")
}
Ich habe dies in meinem Bashrc
bind '"\C-b": "fbr \n"'
Nachdem ich drücken Ctrl-b ich ein Git-Filiale wählen und schaltet sie gleich nachdem ich die Eingabetaste drücken, aber gibt es eine Möglichkeit, zuerst etwas wie git push staging
einzugeben (und dann die Liste der Zweige zu holen und die ausgewählte Verzweigung an der Stelle des Cursors zu setzen, bevor die Verzweigungsliste aufgerufen wurde, und dann Enter drücke, um die ausgewählte Verzweigung an staging
zu übergeben)
Ex: git push staging
(Ctrl-b - eine Filiale wählen), und ich möchte diese Ausgabe erhalten - git push staging selected_branch
Betrachtet git Fertigstellung? https://github.com/git/git/blob/master/contrib/completion/git-completion.bash – webb
@webb vielen Dank. – whitesiroi