Why do you need a source a code repository?
- Version control (for compliance reviews and other reasons)
- Collaboration with remote team members
- Backup your source code (as frequently as possible)
- View code changes over time
- Restore previous versions of your code
- Branching and merging
- Support continuous integration and continuous deployment agile processes (CI/CD)
For my personal development work, I chose to use Git locally on my computer and on Github up in the cloud. At my work organization, we are starting to use Git on-premise via our Team Foundation Servers (TFS), which supports using Git for your version control needs. Microsoft has all but ceased new development of their own version control system (TFVC) in favor of using Git for their Team Services cloud-based version of TFS. Git has won the version control playing field and is the industry standard. The reasons for making this choice are too numerous to mention. You can read about Microsoft’s position on Git yourself: Choosing the right version control for your project.
You can download the Git command line tool for Windows from here. You must download and install it for Git to work on your local computer.
I recently had a wonderful opportunity to attend an onsite TFS Build and Release training class from Colin Dembovsky, and he suggested the use of the GitKraken GUI client application for its rich features and capabilities. Also, if you are in need of information and expert guidance on the use of TFS for your continuous build and release processes, make sure you check out Colin’s ALM Corner website.
Now that I have chosen Git for my version control system, I need to setup a new repository for my ASP.NET Core web service (in the next post).