Git Undo Last Commit
I'm a massive fan of git; it's super powerful and easy to use, especially when it comes to branching. The biggest sin I commit when using git is adding files and then committing them...to master branch instead of a feature branch. Oops. Certainly don't want that.
If you've done a git add (files) and then commit them to the wrong branch, backing that out is easy:
git reset --soft HEAD~1
With the command above, the files are still added but not committed, so you can create your feature branch, do another git commit -m (message), and be on your way!
![Create a CSS Cube]()
CSS cubes really showcase what CSS has become over the years, evolving from simple color and dimension directives to a language capable of creating deep, creative visuals. Add animation and you've got something really neat. Unfortunately each CSS cube tutorial I've read is a bit...
![7 Essential JavaScript Functions]()
I remember the early days of JavaScript where you needed a simple function for just about everything because the browser vendors implemented features differently, and not just edge features, basic features, like addEventListener and attachEvent. Times have changed but there are still a few functions each developer should...
![Pure CSS Slide Up and Slide Down]()
If I can avoid using JavaScript for element animations, I'm incredibly happy and driven to do so. They're more efficient, don't require a JavaScript framework to manage steps, and they're more elegant. One effect that is difficult to nail down with pure CSS is sliding up...
![New York Times-Style Text Selection Widget Using MooTools or jQuery]()
Aaron Newton made a great request to me last week: why not make my MooTools Documentation Bookmarklet function more like the New York Time's text selection widget. NYT's text selection widget listens for text selection and presents the user with a "search" icon...
The other way to achieve this, is
as
HEAD^is pointer toHEAD~1Personally, I have an alias
git undowhich is:Git “easy to use”… Uh, what?
It’s a very complete and powerful tool, no doubt about it, but I wouldn’t call it “easy”. There’s a plethora of options and unclear docs, that it takes a lot of time just to know they exist, not to mention actually use them and get used to them.
For example, I knew about this trick, but didn’t know about Yuriy’s suggestion.
That’s why I end up using a tool like SourceTree instead.