Development
Five Confluence features beginners will love
Prior to joining Atlassian on the Confluence Marketing team, I had never used Confluence, so I understand what it’s like to learn it from scratch. There are tons of useful features for any kind of Confluence user that I’m still learning, but I found concentrating on a few basics helped me get comfortable quickly. 1. Keep […]
Using watchers and @mentions effectively in Jira
Jira makes it easy to keep others in the loop and stay on top of issues you care about. For notifications to be effective you can’t overwhelm your audience. Jira has three notification methods known as notification schemes, watchers, and @mentions. In this blog article we will focus on watchers and @mentions as they apply […]
Four fast ways to link to content in Confluence
The Tip of the Month, brought to you by Atlassian University, is a monthly series to help master Atlassian tools. Products are more fun to use when you know all the tricks. At Atlassian we live in Confluence. Our intranet houses all the content that keeps the company running. This collection of rich pages and […]
Maven Git Flow Plugin for Better Releases
What is JGit Flow and why do I need a Maven plugin? If you missed my other blog post, I recently released 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 […]
Git subtree: the alternative to Git submodule
(Updated in January, 2017.) The Internet is full of articles on why you shouldn’t 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! […]
Five Keyboard Shortcuts I Can’t Live Without
I’ve said it before – I’m a productivity junkie. If there’s a faster way to get something done, I’ll find it. That’s why I commit keyboard shortcuts to memory. Shortcuts for the actions I perform the most. Shortcuts that help me get more work done, faster. Since I spend 90% of my day working with my team in Confluence I thought I’d share the five keyboard shortcuts I use the most to get my job done.
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. […]
Git branching and forking in the enterprise: why fork?
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 […]
Git: automatic merges with server side hooks (for the win!)
This will be standard and easily understandable to anyone who has already been working with git for a while. If you come from a centralized, old school version control background and you are thinking of switching to Git – which I heartily recommend – you will find the topic of this post awesome, almost magical. […]
How Stash Developers Avoid Branching from a Bad Commit
One of my colleagues recently blogged about how the Confluence team avoids creating feature branches from bad commits. This blog post describes how to take the same idea one step further. The Problem I hate it when I make a trivial change, something like: $ git checkout master Switch to branch ‘master’ $ git checkout […]
How to manage a product backlog with ease
Product owners have the challenging task of ingesting feedback from multiple sources, organizing it into a meaningful format, and communicating out to the product teams. Feedback is a critical part of the product life cycle. We can’t iterate to make our products better without it, as we talked about in our three-part series on collecting […]
Git-flow comes to Java
As a Java developer, I’m always trying to find ways to streamline all the mundane tasks that come along with development but aren’t necessarily part of the actual code I’m trying to write. Managing source control and performing releases are definitely on that list. I use Git as my DVCS of choice, and while it […]
How Confluence Developers Avoid Branching from a Bad Commit
The Stash team recently released the Stash-Bamboo plugin, which surfaces pass/fail results from Bamboo builds inside Stash. The main use case for the plugin is to let people reviewing a pull request see whether tests are passing on the development branch before they give the thumbs-up for merging it into master. Pretty cool. So I asked […]
How to Share Files with Your Team Using Confluence
Share files with your team using the File List Blueprint Too often files are trapped in shared network drives or email inboxes, making it impossible for everyone to have access to the most current version. We decided to tackle this problem with the File List Blueprint – which makes it easy to share and store […]
Git Titanium Armor: Recovering from Various Disasters
Git is an advanced tool. It features a philosophy that is dear to my heart: to treat developers as smart and responsible folks. This means that a lot of power is at your fingertips. The power to also shoot yourself in the foot – arguably with a titanium vest on – but shoot yourself nonetheless. […]
