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.
![Detect DOM Node Insertions with JavaScript and CSS Animations]()
I work with an awesome cast of developers at Mozilla, and one of them in Daniel Buchner. Daniel's shared with me an awesome strategy for detecting when nodes have been injected into a parent node without using the deprecated DOM Events API.
![9 Mind-Blowing WebGL Demos]()
As much as developers now loathe Flash, we're still playing a bit of catch up to natively duplicate the animation capabilities that Adobe's old technology provided us. Of course we have canvas, an awesome technology, one which I highlighted 9 mind-blowing demos. Another technology available...
![Element Position Swapping Using MooTools 1.2]()
We all know that MooTools 1.2 can do some pretty awesome animations. What if we want to quickly make two element swap positions without a lot of fuss? Now you can by implementing a MooTools swap() method.
MooTools 1.2 Implementation
MooTools 1.2 Usage
To call the swap...
![GitHub-Style Sliding Links]()
GitHub seems to change a lot but not really change at all, if that makes any sense; the updates come often but are always fairly small. I spotted one of the most recent updates on the pull request page. Links to long branch...
Nice! I use
ci
for commit though, more like Subversion. I also havedi
for diff,st
for status andsta
for 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