This is a series of articles related to Source Control or Version Control issues, from the stand-alone app, such as MS SourceSafe, to Server app, such as MS TFS (Team Foundation Server), to web services such as GitHub, AWS, and MS Azure DevOps. We tried to category this series of articles as Source Control or Version Control, but this site does not have these categories, so we make the articles in Category as DevOps, as explained in the wiki:
DevOps is a set of practices that combines software development (Dev) and IT operations (Ops). It aims to shorten the systems development life cycle and provide continuous delivery with high software quality.[1] DevOps is complementary with Agile software development; several DevOps aspects came from the Agile methodology.
The structure of this article series will cover:
- Stand Alone App:
- MS Source Safe
- Server App
- MS TFS (Team Foundation Server)
- Online (Cloud) Centralized Service:
- MS Azure: DevOps
- Boards
- Repos
- Pipelines
- Test Plans
- Artifacts
- GitHub
- AWS GitHub Enterprise
- MS Azure: DevOps
- Distributed App:
- Git
Because these are huge topics, so I will not step by step, instead, I write any section when I feel I am ready for it, but each section will be relatively independent to become a reading unit.
- Source Control (1), MS Source Safe --- Stand Alone App
- Source Control (2), MS TFS --- Centralized Server App
- Source Control (2-1), TFS --- Comparison
- Source Control (2-2), TFS --- Merge
- Source Control (2-2), TFS --- Shelving
- Source Control (3), MS Azure DevOps (GitHub, Jira) --- Centralized Service
- Source Control (4), Git --- Distributed App
- Source Control (4-1), Git --- Configuration
- Source Control (4-2), Git --- Configured to Connect to DevOps and GitHub
- Source Control (4-3), Git --- Cherry Pick in Visual Studio
- Source Control (4-4), Git --- Recover Git Tree: Reflog/Reset
- Source Control (4-5), Git --- Recover Deleted Branch
- Source Control (4-6), Git --- Revert
- Source Control (4-7), Git --- Get Specific Version or Commit
- Source Control (4-8), Git --- Get Specific Version or Commit in practice
- Source Control (4-9), Git --- Merge: Fetch, Pull, Push and Sync
- Source Control (5), GitHub access (setup connection)
- Source Control (6), DevOps access (setup connection)
- Source Control (7), GitLab access (setup connection and Clone to Local)
- Source Control (8), Git, Azure Repos, and Visual Studio (Interaction) --- this article
- Source Control (9), Push into Git Hub and DevOps
- Source Control (10), Git Hub, DevOps Publish
Introduction
In this article we will concentrate on the topic of Git, Azure Repos, and Visual Studio interactions:
- Azure Repos (GitHub) --- Centralized Source Control Service on Cloud
- Git --- Distributed Local Source Control App
- Visual Studio --- Tool to integrate both Azure Repos and Git
In this article,
- we will not discuss concepts, such as what DevOps is, what GitHub is, what Git is, and so on;
- we will not discuss how to get an account for any of Git or centralized depository, or access, instead
- we discuss the interactions (Processes) between Repos and Git by Visual Studio. and
- we assume one already has an account of Azure and has access to DevOps.
The same is true for GitHub, or AWS (AWS uses the same interface with GitHub, actually is Enterprise GitHub). For the access to that server or called online services, we will discuss in another article, while when one accesses the online depository (ies), the interaction between the server and local (Git) through Visual Studio is the same, that will be discussed here.
Summary: Interactions between Azure Repos and Git by Visual Studio

This graph is from the video GIT and Visual Studio with Azure DevOps Repos - Step by Step, it is very informative about Azure DevOps, we got this screenshot and something related in our discussion just for our specific topic. If you are interested in these DevOps, or App management/Code Control topics, the video is a very good one to view.
A: Get Local Copy of Reposit --- Clone
By default, initially, there will be a master reposit in server, whatever it is MS Azure DevOps, or GitHub, or GitHub Enterprise (AWS), we start from here.

We have assumptions that
- you have an account of an online Source Control server, such as DevOps, GitHub, or AWS whatever from company or yourself
- you can access the account
- you have cloned a master copy to your local
For a company account, it might be setup well, when you open a computer or Visual Studio, you can link the account automatically. Otherwise, it might need a complex setup process. In the DevOps or GitHub server, besides the master repository, there might be some other reposits there, they might be called, such as develop, master, QA, etc.
I assume you have got the local copy of repos by clone. I will not discuss the cloning process here, because that is also quite involved, different product (DevOps, or GitHub) has a different way to do the job, you could make it in server or client (VS), even in Visual Studio, you might have several ways to do it. So I will discuss it in another article.
Now, you have a master repo in both your server and local. This is our starting point:

In Git Changes Tab, by default, it will show master, that is local master, click the arrow on the right-hand side, we have




































Join the conversation! Your thoughts help the community grow.