If you already know VSTS, then Azure DevOps is the new name for it.
Azure DevOps provides set of developer services which support teams to plan their work, collaboration during code development and code deployment. Azure DevOps provides integrated features that you can access through your web browser or IDE client.
You can use one or more of the following services based on your business needs:
- Azure Repos provides Git repositories or Team Foundation Version Control (TFVC) for source control of your code
- Azure Pipelines provides build and release services to support continuous integration and delivery of your apps
- Azure Boards delivers a suite of Agile tools to support planning and tracking work, code defects, and issues using Kanban and Scrum methods
- Azure Test Plans provides several tools to test your apps, including manual/exploratory testing and continuous testing
- Azure Artifacts allows teams to share Maven, npm, and NuGet packages from public and private sources and integrate package sharing into your CI/CD pipelines
In this article, let’s try to sign up for Azure DevOps, create an organization and create a project under it. Under this new project, there will be a source control repository which we can use.
Understanding key terms
This section helps to understand basic terms which we are going to use in this article. Let’s see how the repositories are organized in Azure DevOps.
An organization in Azure DevOps is a mechanism for organizing and connecting groups of related projects.
You can create multiple organizations under your account. You can also update their settings or delete the organization from Azure DevOps.
Each organization gets its own free tier of services (up to five users for each service type) as follows. You can use all the services, or choose just what you need to complement your existing workflows.
- Azure Pipelines: One hosted job with 1,800 minutes per month for CI/CD and one self-hosted job
- Azure Boards: Work item tracking and Kanban boards
- Azure Repos: Unlimited private Git repos
- Azure Artifacts: Package management
Every organization can have one ore more projects under it.
You can create multiple projects under an organization. You can manage them or you can choose to delete any of them. Every project can hold one or more repositories.
A repository is your source control repository. While creating a repository, you can choose either Git or TFVC as the source control repository. You can manage the repositories and either update or delete them.
You can also configure teams who can work on these repositories.
This is where you can configure the build definition for your repository/repositories.
When people say they want to configure CI or make changes to CI, usually people come to this option and change an existing definition or create a new one. By the way, CI here means Continuous Integration.
Every pipeline has triggers – you can schedule build (let’s say every day at 12 noon) OR you can trigger a build whenever there is a pull request raised for merging feature branch into main / master branch.
This is part of Azure Pipelines service.
This is the place where you configure CD (Continuous Delivery) for your project. This is also part of Azure Pipelines service.
If you have not configured release before, this just takes the artifacts generated by Pipeline and deploys them to your deployment servers. During the deployment process, you may want to change few configuration settings, or some URLs. All such things can be configured during release.
You can use Release to deploy your project / solution on Azure or any other cloud platform. You can also deploy on on-premise servers.
In this article, we will not have look at pipelines or releases. We will just try to setup a project for you.
You can navigate to this URL for signing up for Azure DevOps.
As you can see, there are two options –
- Start free, will take you to Microsoft Account login page. You can enter Microsoft account (e.g. outlook.com) credentials. If you want to create new account, you can also create a new outlook account.
- Starte free with GitHub, will allow you to use your GitHub account for setting up Azure DevOps.
Once you login using your choice of credentials (either Microsoft Account or GitHub account), you will see that a default organization has been created. For ex. The organization created for me is highlighted in blue rectangle on left side of below snapshot.
You can access the Azure DevOps for this organization by using https://dev.azure.com/organization_name where replace organization_name with name of your organization.
If you want to create a new organization, you can do so by just clicking on the New organization button just below the default organization.
Then, you will be asked to create a project under that organization. The next snapshot shows the create project panel. Here you can provide:
- Project name, for your project
- Description, the description for your project
- Visibility, can either be public or private.
- Advanced settings like which version control (Git or TFVC) you want to use and which process (Agile or Basic or CMMI or Scrum) you want to use.
Once you click on the Create Project button, a new project will be created for you. Every project has a repository, by default created. The name of default repository name is same as the project name. You can choose to use the default repository or alternatively, you can create new repositories if your project demands.
If your organization needs, you can also create multiple projects. When you navigate to your organization URL, you can see a new project button as shown in below snapshot.
We already know that there is default repository created under every project. You can go to your repository if you go to File menu under Repos.
As you can see in below popup, the repository I created is empty.
If you want to create new repository you can do so by clicking on repository name at the navigation route shown at the top. It will open a new popup which will show you options to create a New repository or to Manage repositories.
If you click on New repository button, then you will be shown below popup on right side. It will ask you name of repository and source control (Git or TFVC) you want to use for this repository.
It will also have option to add a default ReadMe file.
Depending on the nature of your application, you can select the .gitignore file type. I am using Visual Studio, so I selected it. But you can select Objective-C or Android or any other platform. This will add appropriate entries in gitignore file automatically.
Add code to repository
Adding code to repository is simple. Just clone your empty repository on your local machine or laptop. Then create a new solution in Visual Studio solution with all projects you need. Create this solution at the same path where the repository is mapped locally.
Then using Git (or source control explorer), you can commit the changes to repository and push it to remote branch.
Invite Project Team
You can invite the project team members to contribute. When you navigate to your project, you will see an invite button at the top right corner, as shown in below snapshot.
Then you can search the users by their email addresses. Those people will be able to see your project when they login to Azure DevOps. They can also use the repository.
I hope this article provides you enough guidance to get you started on Azure DevOps. Let me know your thoughts.