Saving keystrokes with aliases & scripts
I run git
often. Really often. These are the 10 programs I’ve run
most often in the past month, and how many times I ran them.
Command | Count |
---|---|
g |
1,726 |
vim |
366 |
ag |
250 |
cd |
238 |
ll |
231 |
sudo |
133 |
hub |
87 |
hr |
86 |
exit |
79 |
make |
67 |
(That’s an average of 56 times a day for g
, and I use several computers
regularly, so these numbers are slightly lower than the reality.)
Of course g
is an alias for git
. Saving 2 keystrokes on every command
might not seem like much, but as you can see from how often I run it, that adds
up.
Of course, I also do certain operations in Git more often than others. I have
fairly standard entries in my gitconfig
for these as well, so I can type
g c for git commit, g o for git
checkout, etc.
All of this is fairly standard stuff you’d find in a lot of people’s dotfiles.
But I also noticed that I tend to run git status
more than most other
commands: it’s a common part of my workflow to review where I’m at before I
think about committing or switching branches. Many Linux programs are written
to, by default, tell you “the state of the world” if you don’t explicitly tell
them to do something else, but Git doesn’t. So I have a small shell script that
makes it behave like it does. My g
command isn’t actually an alias, but a
shell function:
g () {
if [[ $# > 0 ]]; then
git $@
else
git status
fi
}
So when I run g without any arguments, that’s equivalent to running git status.
This is a small, simple way I speed up my workflow everyday. Maybe you also have things you’re typing repeatedly you don’t need to.