Source Control (5-2), GitHub Extension for Visual Studio

NoteThis is a series of articles related to Source Control. If you have read my other articles in this series, you may skip the top general part and jump to INTRODUCTION for the specific topic of this article.

This is a series of articles related to Source Control or Version Control issues, from a stand-alone app, such as MS SourceSafe, to a Server app, such as MS TFS (Team Foundation Server), to web services such as GitHub, AWS, and MS Azure DevOps. We have tried to categorize this series of articles as Source Control or Version Control, but this site does not have these categories. So, we put the articles in the DevOps category, 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 to 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
  • Distributed App:
    • Git

Because these are huge topics, I will not go step by step. Instead, each section will be relatively independent and will become a reading unit.

A - Introduction

In the previous article, Source Control (5), GitHub access (setup connection), we discuss the access for GitHub (and Enterprise). We mentioned:

In certain situations, when we click Connect => Manage Connections, we cannot see the Connect to GitHub, probably by settings, like this:

Create a Git Hub Repository from Visual Studio

instead, we have this, without "Connect to GitHub":

Create a Git Hub Repository from Visual Studio

For this situatioin, we have an Alternative Way to Create a New Repository in GitHub.

In this article, I will indicate, the difference in the two situations are not by settings, it is due to installing GitHub Extersion for Visual Studio or not, while as what I knew, it seems the GitHub Extension for Visual Studio is only for VS 2019 and before (till 2015), but not for VS 2022. Therefore, in VS 2022, some useful features are missing. The content of the article:

  • A - Introduction
  • B - Installations
  • C - Visual Studio 2022 missing the GitHub Extension
  • D - Differences with GitHub Extenstion or without

B - Installations

GitHub Extenstion for Visual Studio can be installed through Visual Studio Menu => Extension => Manage Extensions:

GitHub Extenstion

But, for myself, it seems I have never installed that in this way. Most likely, we installed it through the Visual Studio Installation, by choosing it like this for VS 2019:

 Visual Studio Installation

while for VS 2022, it does not have this option in both Visual Studio Extensions:

Visual Studio Extensions

and installation:

Visual Studio Extensions and installation

C - Visual Studio 2022 missing the GitHub Extension

If we check GitHub Extension for Visual Studio - Visual Studio Marketplace, we may see that

Github extension for Visual Studio

i.e., the GitHub Extenstion has been used since Visual Studio 2015, till 2019, but not available for Visual Studio 2022 any more, as it claimed, the functionality has been included in VS 2022. Actually, not. Search online, we did not see any info about this feature discussion, the only one discussion is below, from VS2022 GitHub in Team Explorer - Developer Community:

Github extension for Visual Studio

i.e., this feature is missing, at least till the time, I am writing this article.

Note:

I assume it is a missing feature by VS 2022, but it is possible it is missing feature by myself, if the later case, anybody can indicate my fault. On the other hand, due to Microsoft introducing a new feature in VS 2022: Multy-Repos. A posibility is that these two features are conflict to each other. I have not played on Multy-Repos, will discuss later.

D - Differences with GitHub Extenstion or without

Difference 1:

As we indicated in Introduction, when we Click Connect => Manage Connections:

in VS 2019 with GitHub Extersion for Visual Studio, we can see:

Create a Git Hub Repository from Visual Studio

while VS 2022 without GitHub Extersion for Visual Studio, it will be like this:

Create a Git Hub Repository from Visual Studio

The fix for this missing, we have discussed in Source Control (5-1), Create a Git Hub Repository from Visual Studio.

Note: 

Some one suggested, after clicking Connect to a Project ... in VS 2022, we can open both DevOps and GitHub from the opened window

Connect to a Project

but, I have never got this above, what I got is

Connect to a project

Difference 2:

When we Click Connect => Manage Connections:

Team explorer- Connect

in VS 2019 with GitHub Extersion for Visual Studio, we can see the lists of both DevOps applications and GitHub Applications they have been opened in this Visual Studio environment previously:

Visual Studio environment

in VS 2022 without GitHub Extersion for Visual Studio, we can only see the list of DevOps applications, but no GitHub Applications:

 GitHub Extersion for Visual Studio,

In the above two cases, the opened application is a GitHub application, while the below, the opened application is a DevOps application, the results are the same:

in VS 2019 with GitHub Extersion for Visual Studio, we can see the lists of both DevOps applications and GitHub Applications they have been opened in this Visual Studio environment previously:

 GitHub Extersion for Visual Studio,

in VS 2022 without GitHub Extersion for Visual Studio, we can only see the list of DevOps applications, but no GitHub Applications:

 GitHub Extersion for Visual Studio,

The benefit for 2019 with GitHub Extension is that we can switch the application between different servers, say, between DevOps and GitHub, very easily by Clicking the related app, without need to reopen a Visual Studio instance or open another project from other places.

Difference 3:

In VS 2019 with GitHub Extersion for Visual Studio, we can open from GitHub easily by File => Open => Open from GitHub

 GitHub Extersion for Visual Studio,

while VS 2022 without GitHub Extersion for Visual Studio does not have this feature:

 GitHub Extersion for Visual Studio,

in VS 2019 with GitHub Extension, after Clicking Open from GitHub, a GitHub login page will be shown:

 GitHub Extersion for Visual Studio,

after login:

 GitHub Extersion for Visual Studio,

Choosing the project you want to open or clone:

 GitHub Extersion for Visual Studio,

Open or Clone GitHub app:

 GitHub Extersion for Visual Studio,

 

References:


Similar Articles