Say hello to JIRA Agile and JIRA Capture Learn More »

Design Guidelines 1.1 – Making Your Life Easier

I'm speaking at AtlasCamp 2014 Learn More »

The Atlassian Design Guidelines (ADG) is a public best practice guide for how to design all things Atlassian. As well as being a sneak peek into our inner workings, these are also our best practices for designing products and add-ons that behave consistently for our users. Today, we released Atlassian Design Guidelines 1.1. Our design team has been working for the last couple of months on precision and beauty for altogether new patterns and updates to existing ones. The results will give you a

Continue reading »

Maven Git Flow Plugin for Better Releases

I'm speaking at AtlasCamp 2014 Learn More »

What is JGit Flow and Why Do I Need a Maven Plugin? If you missed my other blog post, I recently release a Java library named jgit-flow that implements the git-flow branching and merging model introduced by Vincent Driessen in Java. My hope is that developers will use this library to integrate git-flow workflows inside of their Java apps, and to get the ball rolling, I thought I'd be the first integrator. If you read my other blog post, you'll remember that although git-flow is really useful,

Continue reading »

Here at Atlassian, we recently went through an exercise to consolidate the authentication and identity management of our key support systems.  As we have grown, we have seen a number of account silos materialize across our system landscape. This required customers to have separate logins for support, forums, account management, etc., resulting in a frustrating experience for our customers, and a tough situation for Atlassian staff. The problem of multiple account silos is common across the

Continue reading »

The Internet is full of articles on why you should not use Git submodules. I mostly agree, although I am not so harsh in my evaluation. As I explained in a previous post, submodules are useful for a few use cases but have several drawbacks. Are there alternatives? The answer is: yes! There are (at least) two tools that can help track the history of software dependencies in your project while allowing you to keep using git: git subtree google repo In this post I will be looking at git subtree

Continue reading »

git? tig!

I'm a big fan of Git, but I'm not such a big fan of most UIs for it, especially the ones integrated into IDEs. I find them convoluted and confusing. They try to map some generic "VCS" language onto the commands, or try to hide too much, making it hard to understand what's going on. Or worse: they're written in Tcl/Tk... In short, I don't trust 'em. So command line it is for me, which is fine because I love my command line. Except once in a while, it's nice to be able to see a "graphical" view

Continue reading »

Enterprise DVCS Workflows are settling and patterns are consolidating. The flexibility git gives teams is so broad that even within a single company different teams might use different approaches to code sharing and collaboration. I speak from hard evidence as this is exactly what happens at Atlassian. The Stash team works differently than the Confluence team which works differently from the JIRA team. They all share a similar Agile process but have different approaches to branching, Continuous

Continue reading »