Get git guru gold with Bitbucket’s glorious git guides

Alliterations aside, Git is full of mysteries.


It doesn’t have to be like this ^. Whether you are a newbie taking to Google searching for “which git workflow is right for me” or a more advanced user who broke the golden rule of rebasing and got yourself in to the very confusing situation of using git rebase on a public branch, we launched in 2013 just for you.

We had one goal in mind – for developers to master Git and learn how to get Git right. is a microsite to not only describe what each git command does, but why, and when you should use them. We have in depth overviews of the basics, Git workflows, and more advanced topics and add at least 1 new article every month. If you aren’t aware of this resource, here are a selection of some of the most popular articles available on

  • Git cherry pick – git cherry-pick is a useful tool but not always a best practice. Cherry picking can cause duplicate commits and in many scenarios where cherry picking would work, traditional merges are preferred instead. With that said git cherry-pick is a handy tool for a few scenarios… click to learn which ones.
git cherry pick
  • git rebase – Before you run git rebase, always ask yourself, “Is anyone else looking at this branch?” If the answer is yes, take your hands off the keyboard and start thinking about a non-destructive way to make your changes. Common Rebase use cases and pitfalls will be covered here.
git rebase
  • merging vs rebasing – Compare (cough) destructive and non destructive approaches to merging vs rebasing. The git rebase command has a reputation for being magical Git voodoo that beginners should stay away from, but it can actually make life much easier for a development team when used with care. In this article, we’ll compare git rebase with the related git merge command and identify all of the potential opportunities to incorporate rebasing into the typical Git workflow.
merging vs rebasing
  • Stashing is handy if you need to quickly switch context and work on something else, but you’re mid-way through a code change and aren’t quite ready to commit. Check out everything you need to know about this handy command (with visuals).
  • Undoing changes in Git – one of the greatest things about using Git is that while it is tricky, you don’t have to be too afraid of breaking things. Almost anything can be undone. Check out all the possibilities on undoing changes.
undoing changes in Git

Don’t take our word for it

Go ahead and bookmark it, and take a dive down the Git journey to become the pro on your team. (We also know of a great Git repository solution to test out your new skills.) 😉

Deployment errors more annoying than the new guy’s mechanical keyboard? Require merge checks with our Premium plan to keep your hair from going gray.