Join Jose Miguel Rady Allende for an in-depth discussion in this video Code management, part of Visual Studio Team Services: The Basics.
- [Instructor] Cloud computing has changed the way software is designed, built, tested and deployed. This has impacted the tools that we use and how we collaborate with one another to achieve our goals. Version control systems play a major role in this evolution. In this video, I'll walk you through some of the basics of git. These concepts will help you get an idea of how team services can improve your efficiency as a team when developing software and collaborating with others. By leveraging git and team services your code can live in the cloud to give everybody the ability to collaborate at the same time without worrying about data integrity.
The first step for accomplishing this is to host your code in the cloud. In team services, there's multiple ways of doing so. You can either create a repo within the tool or import your repo from another source. For the time being let's say that a git repo already existed in team services. A git repo contains a set of branches and folders and files with complete history and version tracking capabilities. Within git folders and files behave in the same way as folders and files you use in your computer.
Branches are a bit more interesting. They allow you to develop features that can be isolated from each other. The master branch is a default branch when you create a repo and other branches can be used for development of new features and then merged back upon completion. This allow scenarios in which your master branch contains a production piece and your additional branches allow for development of new features in parallel. The question you may be asking is how do you actually work on your code? Even though the code lives in the cloud in practice, most of the development happens locally.
This gives the developer the freedom to use the tools of his preference and be more productive. To achieve this, users can run the clone command for git. Once a repo is cloned, that developer can decide what's the best tool to use to make changes and whether or not he wants to create a new branch for it. The recommendation would always be to create a new one to keep the code clean and the quality high. As a developer works on the changes everything gets saved locally with detailed history of the changes that are committed so they can be rolled back if any problem is encountered.
Keeping the cloud in sync with your local changes is as simple as pushing changes into the cloud. The final step is getting your code ready for production. And this is easy as well. Whether you make use of pull requests or not merging into master is a step you want to be careful about to guarantee quality and happy customers. Along the way team services facilitates this workflow and provides the functionality needed to make sure your team can leverage best practices. Teams can then choose to adopt these based on their own criteria and their own requirements.
- Managing backlogs and sprints
- Creating dashboards
- Hosting and managing code
- Committing code changes
- Applying best practices for branching
- Building a code base
- Creating build definitions
- Integrating with other tools
- Customizing your process with extensions