Autocomplete Git Commands and Branch Names


In a terminal on Mac OS X, you can use [TAB] to autocomplete file names and file paths.

Wouldn’t it be nice if you could do the same with git commands and branch names?

Step 1: Get git-completion script

Get the git-completion.bash script and put it in your home directory:

curl -o ~/.git-completion.bash

Step 2: Update .bash_profile

Make sure that you are in your home directory:

cd ~/

Add the following code to your .bash_profile (~/.bash_profile).

if [ -f ~/.git-completion.bash ]; then
  . ~/.git-completion.bash

If you don’t have .bash_profile file just create it and append the code on the end.

Step 3: Apply the changes

The script will work for all new terminal tabs (or windows), to have it running right away you need to execute it:

source ~/.bash_profile

Step 4: Check if it’s working

Go to any folder with git repository. You should find that [TAB] now autocompletes commands and branch names.

git commands autocompletion
git commands autocompletion
git branch names autocompletion
git branch names autocompletion
  • Ruth Morata Gil

    Ruth Morata Gil

    Posted on

    So simple and still, for some reason, it won't work for me :/ I get the same as always when I hit tab after "git" in a folder with git repo. Oh well!

  • J


    Posted on

    This is great! I wish it worked with my git aliases. For instance, instead of typing `git checkout`, I like typing `gco`. Unfortunately I don't get branch auto-completion this way.

Leave a Reply

View Comments (2)...

Related articles:

How to Efficiently Build a Cryptocurrency News Portal in 2021 – Part I

Pros and Cons of NextJS in 2021