Connecting Atlassian SourceTree With Your Azure DevOps GIT Repo

In this short post, I will show you how you can connect SourceTree with Azure DevOps. That way, you can work with your GIT repositories using the best of both worlds.

I like using SourceTree in my development teams since it is an easy interface. Another advantage is that it is available for both Windows and Mac OS. Last but not least; it supports the Gitflow Workflow, which is especially great for release-based projects.

Background

Back in 2018, Microsoft renamed VisualStudio Online into Azure DevOps. It sounds more catchy and it indicates its purpose more; enabling developer teams to take care of rolling out their software independently.

But changing a name for an online service also means changing the URL. And this is where a lot of people get mixed up on what to use for their GIT repo URL.

Add in a snuff of confusion by changing the access for external tools from username password to a Personal Access Token (PAT) and you have a lot of people getting confused.

Because is more annoying than if you can’t get your favorite GIT client to work with a GIT repo that you want to clone.

I got this working via the following steps:

  1. Create a PAT in Azure DevOps (https://docs.microsoft.com/en-us/azure/devops/organizations/accounts/use-personal-access-tokens-to-authenticate?view=azure-devops)
  2. Make sure you copy the generated PAT as you won’t be able to view it again
  3. On Source Tree, go to add account and select Azure DevOps
  4. for the host, I used https://{organisation}.visualstudio.com as the new URL format for Azure DevOps didn’t work
  5. enter the generated PAT as username
  6. use the PAT you just generated for the password as well

After this, you can get the URL of your repository and add your repo to Sourcetree as described on the SourceTree help page.

The credentials appear to be ignored?

If somehow your Sourcetree doesn’t seem to be using the right PAT credentials when you try to clone your repo, force Sourcetree to use the credentials by prefixing the URL with them:

[crayon-66fea0a10207d937399347/]

Using these steps, SourceTree will force using the PAT as credentials for the repo and you can clone and work on the repo directly.

Somehow, I couldn’t get the username — PAT as a password combination working. I found out this route and it works for me.

Please note

At the time of writing, there are some things you should know. I didn’t use them in my instructions to spare them for you and because you probably — like me — just want to get to speed and work with your repo:

Concluding

Hopefully, this post helped you save some time by showing you how to connect SourceTree with Azure DevOps.

Once you have them connected, they will play nice together. I found them to be a very nice couple with some great advantages:

  • SourceTree can be used by both Mac and Windows users on your team and makes your team talk in the same GIT lingo and use Git WorkFlow.
  • Whereas Azure DevOps lets you work on your product in an Agile manner, with planning boards, automated flows via Pipelines, and GIT repositories.

Code Hard, Ship harder 🔥

This post is also published on Medium