Programmers understand the value of using git for version control and how it plays an important part in the development of software on a daily basis. However, there are git commands used frequently. It is not a secret for programmers to constantly look for ways to optimize processes, make things easier, and also become more productive. Those who want to become more efficient at git workflow should look into learning how to use git alias, which we will explain in this article.
Git alias is an alternative tool git has to generate shortcuts or custom commands for frequently used commands. For instance, as you work on different features it is common to checkout different branches using the git checkout
command. By setting an alias to the checkout
command, we could shortcut this command something like git co
or git cout
.
Learning how to use git aliases means remembering how to use more git commands, which would mean something else to remember to the already extensive list of things programmers have to keep on their brain. Luckily, using git aliases is rather simple and straightforward, which we will explain in this article and show you where the aliases are located, how to update and delete an alias, how to see all the git aliases, and why you should start using git aliases more often.
Table of Contents
How to Create a Git Alias
You can set up a new git alias using the git config
command followed by the keyword alias
. Here is the syntax to generate an alias:
git config --global alias.<alias> <commands>
Where <alias>
is the name of the alias or shortcut you want to assign, and <commands>
is the command to execute whenever the alias is called. For instance, if we want to create an alias s
for the status
command, it would look like this:
git config --global alias.s status
Once the alias is created, we can call the alias just like if we were calling any command in git.
git s
There are git commands where you would typically pass an additional value such as the checkout
command. If we need to checkout from “other_branch” to “master” branch, you would typically add the name of the branch after the checkout
keyword.
git checkout master
Therefore, If you create an alias cout
for the checkout
command, like in the following example:
git config --global alias.cout checkout
You could still provide additional options when calling the alias cout
like if you were executing the checkout
command.
git cout master
In case you want to create an alias that automatically checks out the master branch, make sure to the branch when creating the alias.
git config --global alias.cout-master "checkout master"
Notice how we are using quotes whenever there are multiple values for the alias being created.
Where is my Git Alias Stored?
Notice in the previous section we used the keyword --global
to generate the git alias. That means, the alias we generated is stored in the global configuration file. While it is common to create the alias in the global configuration, that doesn’t mean you have to generate it there all the time.
There are different configuration files you can use:
- Global config file using
--global
keyword - System config file using
--sytem
keyword - Repository config file using
--local
keyword - Per Worktree config file using
--worktree
keyword - Any given config file using
-f
or--file <file>
keyword
Hence, we can create the git aliases and store them on different configuration files. For instance, if we want to store the alias st
for the status
command in the repository configuration file, you would use the following command:
git config --local alias.s status
How to List Git Aliases
There are different ways to display the list of git aliases. One approach is to use the --get-regexp
command to get the value of all configurations containing the word “alias” using regex.
git config --get-regexp alias
Another way is to use the --list
option which will display the list of all the configurations.
git config --list
The only disadvantage of using --list
is to display configurations that are not aliases such as branch names or the user’s personal information.
For a more targeted list of aliases, such as listing only global aliases, make sure to provide the keyword of the config file location. For the global config file, we use the --global
option.
git config --global --get-regexp alias
git config --global --list
How to Update a Git Alias
To update a git alias, use the -e
or --edit
config option.
git config --global --edit
This will open the configuration file in the terminal in VIM mode. Using the keyboard, find the [alias]
section and locate the alias you want to update. Update the command assigned to the alias. Once it is updated, press the ESC key. and type :wq
and press the ENTER key. This will save the changes made in the config file as well as exit VIM mode in the terminal.
How to Delete Git Aliases
To delete git aliases, use the --unset
option followed by alias.<alias_name>
. For instance, if we want to remove the alias s
as a shortcut of the status
command, run the following command:
git config --global --unset alias.s
We had also created an s
alias in the local configuration. We can run a similar command to remove it, but with a different config file option.
git config --local --unset alias.s
Why You Should Start Using Git Aliases
Thinking about git aliases as adding more complexity to the list of git keywords a programmer needs to remember can be a reason for programmers to stay away from adding shortcuts. However, the reality is the fewer time programmers spent on typing to implement a solution, the more efficient they are at delivering solutions.
Also, there are commands that are not easy to remember, which setting an alias can make it more readable whenever it is needed. For instance, if you need to revert to the last commit, you can execute the following command:
git revert HEAD
While HEAD
references the last commit of the current branch, it might not be as readable as if you had a command name like revert-last
. In that case, we can create an alias to revert to the last commit.
git config --global alias.revert-last "revert HEAD"
Now, we can execute an alias command which is user-friendly and easy to understand.
git revert-last
Conclusion
Using git aliases is a powerful tool software developers can take advantage of to develop shortcut commands to quickly execute git workflows and spend less time typing, becoming more efficient. It is also possible to create git aliases to provide a more explicit meaning of what a process does, making it easy to understand by only reading the git alias.
Interested in Learning more about Git?
I wrote other articles explaining how to use other git commands, and I thought you might be interested in reading some of them since you are reading this.
- How to Rebase in Git: Explained Step-by-Step
- How to Revert the Last Commit Locally and Remote in Git
- What is Git HEAD? A Practical Guide Explained with Examples
- Learn How to Use Version Control with Git and GitHub: The Absolute Guide for Beginners
- How to Update GitHub Personal Access Tokens?
Did you like this article?
Share your thoughts by replying on Twitter of Become A Better Programmer or to my personal Twitter account.