frank
Goto Top

Automatische GIT Vervollständigung (autocomplete) auf Mac OS X

Meine Version: Mac OS X 10.8.2
Git Version 1.7.9.6 (Apple Git-31.1 XCode) siehe dazu: GIT funktioniert nicht mehr in OS X Mountain Lion 10.8

Hallo,

da ich viel mit OSX 10.8 und GIT arbeite fehlte mir bis jetzt die Möglichkeit der automatischen Vervollständigung von GIT-Befehlen, wenn man die Tab-Taste drückt. Hier meine Lösung zu dem kleinen Problem.

Folgende Zeile im Terminal ausführen (es wird lediglich die git-completion.bash von der Github.com Seite herunter geladen):
curl https://github.com/git/git/raw/master/contrib/completion/git-completion.bash -OL

Die Datei kann im Userverzeichnis oder sonst wo im System liegen. Ich habe sie in das Verzeichnis /bin/ kopiert (dabei aber nicht vergessen die Datei ausführbar zu machen):
sudo cp git-completion.sh /bin/.
sudo chmod a+x /bin/git-completion.bash

Jetzt nur noch die Datei mit dem eigenen Profil verbinden:
Folgendes zu ~/.profile oder ~/.bash_profile Datei hinzufügen:
source /bin/git-completion.bash

alias gco='git co'  
alias gci='git ci'  
alias grb='git rb'  

Die Aliase sind nur zur Vereinfachung da, wichtig ist die "source"-Zeile. Folgendes zur ~/.gitconfig Datei hinzufügen:
[alias]
co = checkout
ci = commit
rb = rebase

Fertig. Jetzt noch das Terminal neu starten (oder ein su - username machen) und schon sollte die automatische Vervollständigung von GIT-Befehlen per Tab-Taste funktionieren.

Gruß
Frank

Content-Key: 194522

Url: https://administrator.de/contentid/194522

Printed on: April 24, 2024 at 19:04 o'clock

Member: Frank
Frank Nov 19, 2012, updated at Dec 10, 2012 at 17:14:47 (UTC)
Goto Top
Kleine Ergänzung

Wenn man im Bash-Promt auch noch den aktuellen "Branch"-Namen sehen will, müssen folgende Schritte hinzugefügt werden.
Laden des git-prompt.sh Scripts:
curl https://github.com/git/git/raw/master/contrib/completion/git-prompt.sh -OL
Die Datei kopieren:
sudo cp git-prompt.sh /bin/.
sudo chmod a+x /bin/git-prompt.sh
Folgendes zu ~/.bash_profile Datei noch hinzufügen:
source /bin/git-prompt.sh
PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ '  
Jetzt das Terminal neu starten (oder ein su - username machen) und im Bash-Prompt steht zusätzlich noch der Branch-Name drin (wenn ein .git im Verzeichnis liegt)

Hier meine komplette ~/.bash_profile Datei:
source /bin/git-completion.bash
source /bin/git-prompt.sh
PS1='[\u@\h \W$(__git_ps1 " (%s)")]\$ '  
alias gco='git co'  
alias gci='git ci'  
alias grb='git rb'  

Gruß
Frank