Creating Git Aliases
I create shortcuts for everything. I create variables which act as text shortcuts, shortcuts in TextMate to generate CSS/JS/HTML, and bash scripts so I don't have to type in the same commands over and over again. So why should version control software be any different? I commit and push religiously so I create Git aliases to save myself a few keystrokes.
Sample Aliases
#make "com" alias for "commit"
git config alias.com commit
#make "co" alias for checkout
git config alias.co checkout
#make "br" alias for branch
git config alias.br branch
# When you want to see just the differences of one function in one file in two different commits
git config alias.funcdiff '!sh -c "git show \"\$1:\$3\" | sed -n \"/^[^ \t].*\$4(/,/^}/p\" > .tmp1 &&
git show \"\$2:\$3\" | sed -n \"/^[^ \t].*\$4(/,/^}/p\" > .tmp2 &&
git diff --no-index .tmp1 .tmp2"' -
These are just some sample Git aliases. You can view more detailed (and by detailed I mean brain-numbing) examples of git aliases at the Git Wiki.
![Create Namespaced Classes with MooTools]()
MooTools has always gotten a bit of grief for not inherently using and standardizing namespaced-based JavaScript classes like the Dojo Toolkit does. Many developers create their classes as globals which is generally frowned up. I mostly disagree with that stance, but each to their own. In any event...
![5 HTML5 APIs You Didn’t Know Existed]()
When you say or read "HTML5", you half expect exotic dancers and unicorns to walk into the room to the tune of "I'm Sexy and I Know It." Can you blame us though? We watched the fundamental APIs stagnate for so long that a basic feature...
![pointer Media Query]()
As more devices emerge and differences in device interaction are implemented, the more important good CSS code will become. In order to write good CSS, we need some indicator about device capabilities. We've used CSS media queries thus far, with checks for max-width and pixel ratios.
![MooTools CountDown Plugin]()
There are numerous websites around the internet, RapidShare for example, that make you wait an allotted amount of time before presenting you with your reward. Using MooTools, I've created a CountDown plugin that allows you to easily implement a similar system.
The MooTools JavaScript
The CountDown class...
Nice! I use
cifor commit though, more like Subversion. I also havedifor diff,stfor status andstafor stash.I’m trying to get the funcdiff alias created. When I try to call it with something like:
git funcdiff “rel\path\to\file” functionName
or
git funcdiff HEAD~2 HEAD “rel\path\to\file” functionName
both give me an error like:
fatal: Path ‘funcitonName’ does not exist in ‘sha1-2’.
fatal: Invalid object name ‘rel\path\to\file’.
I’ve Googled everywhere for anyone using this alias to see a sample syntax, but no one has one. Have you used it successfully?
You can make aliases for branch name, too. For example:
git symbolic-ref head HEAD
Dan, command
git symbolic-ref head HEAD
ruins git repo in windows. Because it overwrites “HEAD” with “head” in “.git” directory
For ones, that tried this: just rename the file back
Very useful, thanks!
Thanks for the commands,
I need to know how to create an alias for paths.
For example if I need to write “git push PATH” instead of “git push gitolite@codex…”
Regards