GitHub clone to desktop uses TortoiseGit instead of GitHub Desktop - github

When i try to clone a repository to desktop the default app for cloning has suddenly became TortoiseGit instead of GitHub. Anyone with a fix?

The following fix is a permanent solution for this issue that also withstands TortoisGit-updates/repairs.
It adds GitHubDesktop's protocol-associations the way described in https://learn.microsoft.com/en-us/windows/win32/shell/default-programs.
Add to the registry (You can save this content as .reg file and double-click it to auto-import these keys into registry):
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\GitHubDesktop]
[HKEY_LOCAL_MACHINE\SOFTWARE\GitHubDesktop\Capabilities]
[HKEY_LOCAL_MACHINE\SOFTWARE\GitHubDesktop\Capabilities\UrlAssociations]
"github-windows"="github-windows"
"x-github-client"="x-github-client"
[HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications]
"GitHubDesktop"="Software\\GitHubDesktop\\Capabilities"
Reboot or on a windows-server sign-out and log-in.
The next time a project is cloned from github, a message-box popped-up asking to pick an app.
GitHubDesktop will now also be available in the Windows settings: Choose default apps by protocol. So it can be recovered with Windows settings, if TortoisGit (or another app) was chosen as default handler for GitHub-clone.
I also opened a new error at GitHubDesktop-development: https://github.com/desktop/desktop/issues/8258

There was a bug in 2.6.0 which made TortoiseGit the default if the github handler was enabled on installation.
To fix this, go to the default programs settings in Windows, open the file-type associations dialog and set github-windows and x-github-client back to the official github client. Maybe you have to update to TortoiseGit 2.7.0 first.
cf. https://www.thewindowsclub.com/change-file-associations-windows
You could try whether the hard way works: (Store this as a .reg file and import it, you need to madjust the paths)
Windows Registry Editor Version 5.00
[-HKEY_CLASSES_ROOT\github-windows]
[HKEY_CLASSES_ROOT\github-windows]
"URL Protocol"=""
#="URL:github-windows"
[HKEY_CLASSES_ROOT\github-windows\shell\open\command]
#="\"C:\\Users\\USERNAME\\AppData\\Local\\GitHubDesktop\\app-1.4.2\\GitHubDesktop.exe\" --protocol-launcher \"%1\""
[-HKEY_CLASSES_ROOT\x-github-client]
[HKEY_CLASSES_ROOT\x-github-client]
"URL Protocol"=""
#="URL:x-github-client"
[HKEY_CLASSES_ROOT\x-github-client\shell\open\command]
#="\"C:\\Users\\USERNAME\\AppData\\Local\\GitHubDesktop\\app-1.4.2\\GitHubDesktop.exe\" --protocol-launcher \"%1\""

change windows registry is not working.
I have met the same problem and the registry is all right,but github desktop wont come out.
As a software developer,I used url protocol once.I cannt understand why Windows setting is not related to the ROOT registry . I would appreciate a comment.
here is how i solve the problem:
After uninstall tortoise and reinstall github. Chrome works fine.
When you install tortoise,be careful with this setting:
but even if you unchecked this,x-github-client is registed to tortoisegit client again.
You can check it in your windows setting of default apps - choose default apps by protocal.
So i think this is a bug for tortisegit.
I use tortoisegit 2.7.0 and win10 1809.
If you really want github desktop to popup , you should not install tortoisegit

This is based on tobias.loew answer:
If you don't have this line at the start:
Windows Registry Editor Version 5.00
Script won't compile
Create github.reg file:
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SOFTWARE\GitHubDesktop]
[HKEY_LOCAL_MACHINE\SOFTWARE\GitHubDesktop\Capabilities]
[HKEY_LOCAL_MACHINE\SOFTWARE\GitHubDesktop\Capabilities\UrlAssociations]
"github-windows"="github-windows"
"x-github-client"="x-github-client"
[HKEY_LOCAL_MACHINE\SOFTWARE\RegisteredApplications]
"GitHubDesktop"="Software\\GitHubDesktop\\Capabilities"
Put this in a file called github.reg and then double click it.

Related

github login and sync failure in updated vscode linux version

recently I installed a fresh version of the KDE neon user edition and I updated it and works fine.
I also installed the vscode Debian version and nothing is wrong.
but when I want to login with my GitHub account in vscode for configs sync it opens a firefox tab that I log in to my GitHub and authorizes the vscode and it succeeds and gets back to vscode and instead of signing in and syncing the configs it opens an empty unsaved file named something like this:
did-authenticate\?windowid\=1\&code\=6beea2fcb8a47e0ea49e\&state\=2efc5efd-9c68-4735-a4a0-fd690dd7aec0
in this path : "~/vscode:/vscode.GitHub-authentication"
and after a few seconds canceled notification appears.
I've installed vscode for Debian version 1.63.2 which people in this Github issue had the same problem in version 1.62.2 and they are saying that this problem is fixed for them in version 1.62.3.
I don't have this problem with the Microsoft account sign-in.
what am I missing?
Update:
for testing, I tried to install an extension for vscode and I pasted the URL with vscode protocol in a web browser like this (vscode:extension/GitHub.vscode-pull-request-github), and instead of opening the vscode extensions tab, it goes back to vscode and opens an empty file in the same directory ("~/vscode:/vscode.GitHub-authentication").
so this is vscodes fault that cant handle the vscode: URLs.
I found out what the problem is but I don't know how to fix it
for the record I've updated the vscode today to the 1.64.1 version and still have the problem.
enter image description here
First, you need to get the GitHub Pull Requests and Issues and GitHub extensions together. Then go to the section specified in the photo and give the details of the account and repository you are using. And then it will be fixed.
I ran into this issue myself and discovered that it's because the VS Code command-line application isn't designed to handle URLs, but local file paths. VS Code registers the vscode:// URL scheme with XDG using an appropriate *.desktop file and these URLs should be opened using the command-line program xdg-open. In Firefox, if you have not yet set a default application for vscode:// URLs, then it will ask you for a program to open it with, select /usr/bin/xdg-open. If you have already set it to a different default, you can change it as follows: go to the Menu -> Settings -> General -> Applications -> vscode -> Use other... -> Select /usr/bin/xdg-open as the program for vscode.
With the default for vscode:// URLs set to use xdg-open, then any future integration with VS Code should work naturally to open it as expected.

C/C++ Code navigation not working in vscode remote development

Tried to access a remote project (from Linux environment) over vscode remote development environment, followed all the necessary steps mentioned in https://code.visualstudio.com/docs/remote/remote-overview, Able to see the files and folder structure but unable to navigate the source code. Tried "Goto Definition"(F12) and Ctrl+ Click also not working
Tried to set max watch value to fs.inotify.max_user_watches=524288 still issue remain same
Once I reload the extensions it worked fine. I installed C/C++ IntelliSense from Microsoft and Austin

Is there a way to sync the settings between local and remote for vscode?

So the latest version of vscode (1.46) provides preference sync, but I found I cannot enable this feature for remote vscode. Whenever I open remote folder, (e.g., in wsl), the option to sign in MS account and turn on preference sync is missing. Did I miss anything here or it is not supported?
figure below shows my local vscode instance with the preference sync:
figure below shows my vscode instance for remote (wsl) without the preference sync option:
https://code.visualstudio.com/docs/editor/settings-sync
I was looking to enable this too, the first line is the answer I think. Only available for vscode insiders at the moment, maybe wait 'til next month

Open Link in VSCode Will Create a New Web Browser Under Same Icon as VSCode

I am using VScode version 1.45 with Firefox version 76.0.1 as a default browser (with Ubuntu 18.04.4 LTS). Whenever I tried to open a link in the VSCode, it will open the Firefox browser under same icon as VSCode, and I cannot merge these tabs into existing Firefox web browser.
Same thing also happens when I try to run a program using live server extension. But when I use npm to start the development server, it will create a new window or tab under the Firefox icon.
How could I fix this so whenever I open a browser from VSCode, it will create a new browser or tab under the appropriate (Firefox) icon? Thank you.
There is already an issue on VSCode's GitHub repository and as it is mentioned in the issue, origin of the issue is in snapd.
To fix the issue, as mentioned on aforementioned github issue:
Open some URL from the VSCode snap.
In the new window, navigate to about:profiles.
Ensure that the profile marked as "Default Profile" matches Firefox when opened normally. If not, use the "Set as default profile" button under the correct profile to change the default.
Try making firefox your default browser thorugh firefox and also do check that firefox is your default browser from vscode
I found this solution the best solution
You might have installed VSCode as a snap package, which causes
$XDG_CACHE_HOME to be set to ~/snap/code/common/.cache, which could
cause some cli tools to mistake that for your cache directory, and
install/launch binaries from there.
If you install VSCode from the .deb download, it should fix your issue
I removed vscode from Ubuntu software and download the .deb file from vscode site and install it ... problem solved

Visual Studio/C#: Nuget Unable to connect to remote server

In MS Visual studio, I'm trying to install Nuget packages into my solution.
When I choose the option "Manage Nuget Packages for Solution" and attempt to install a package, I get the message "Unable to connect to the remote server".
I do have Internet connection so do not understand why I always get this message.
Is anyone aware of some steps that can be taken to rectify this issue?
Thanks
Clearing HTTP_PROXY worked for me.
Let me fix it myself
Important: This section, method, or task contains steps that tell you
how to modify the registry. However, serious problems might occur if
you modify the registry incorrectly. Therefore, make sure that you
follow these steps carefully. For added protection, back up the
registry before you modify it. Then, you can restore the registry if a
problem occurs. For more information about how to back up and restore
the registry, click the following article number to view the article
in the Microsoft Knowledge Base: 322756 How to back up and restore the
registry in Windows
To reset your Internet Explorer proxy settings yourself, follow these
steps:
On Windows XP, click Start, or on Windows Vista or Windows 7, click
, and then click Run. On Windows 8 or Windows 8.1, to access the Run
command, press the Windows logo key Windows logo key + R. Or, swipe
in from the right edge of the screen, and then tap Search (or if you
are using a mouse, point to the upper-right corner of the screen,
move the mouse pointer down, and then click Search). Type Run in
the search box, and then tap or click Run.
In the Run text box, copy (CTRL+C) and paste (CTRL+V) or type the
following: reg add
"HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings"
/v ProxyEnable /t REG_DWORD /d 0 /f
Click OK.
On Windows XP, click Start , or on Windows Vista or Windows 7, click
, and then click Run. On Windows 8 or Windows 8.1, to access the Run
command, press the Windows logo key Windows logo key + R. Or, swipe
in from the right edge of the screen, and then tap Search (or if you
are using a mouse, point to the upper-right corner of the screen,
move the mouse pointer down, and then click Search). Type Run in
the search box, and then tap or click Run.
In the Run text box, copy (CTRL+C) and paste (CTRL+V) or type the following: reg delete
"HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings"
/v ProxyServer /f
Click OK.
From http://support.microsoft.com/kb/2289942 Thanks #Sandy
Solved. that's because Visual studio is using fiddler http connection.
all you have to do is to open fiddler=> fiddler option => connection => uncheck "act as system proxy on startup".
thats all!
This started happening to me quite randomly today on Visual Studio 2012. A bit simplistic but, after checking if the Nuget site itself was up and trying the Package Manager Console, my solution was to:
Close and reopen Visual Studio
Suddenly it could connect to the Nuget server again and download my much needed packages.
Tools -> Library Package Manager -> Package Manager Settings -> Clear Package Cache
That worked for me
Clearing the Proxy Cache in IE Fixed this for me. Use these two command lines in the command prompt (run as administrator)
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f
then
reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /f
The details can be found at https://support.microsoft.com/en-us/kb/2289942
I solved it on mine by commenting out the
<system.net></system.net>
section from the devenv.exe.config located at
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\devenv.exe.config
Here's how I fixed this issue after none of the suggestions above worked:
Internet Explorer > Tools > Connections > Lan Settings
Uncheck 'Automatically Detect Settings' box. This solved the Nuget Package Manager issue for me. Additionally it fixed another connectivity problem I was having with a VMWare virtual desktop AND... it greatly increased speed in Internet Explorer when trying to connect to secure sites.
I had this issue with VS 2010 package restore even after updating the Nuget Package Manager to the latest and also unselecting all package sources I could. I was getting an error while enabling the Nuget Package Restore option on the solution.
I resolved this by using a different box that didn't have restricted https access to the nuget server. When I used VS 2012 from a different box to enable package restore, it worked fine. I believe it needs to be able to connect to the nuget online server to download the latest nuget.exe used during restore operations. So one option you can use is to perform the Enable Package Restore process from a server that has all the internet access necessary, and then check-in the changes. Once these changes are checked-in, you can then load the solution again from VS 2010 or VS 2012 and use the nuget restore capabilities.
Hope that helps!
Restarted Visual Studio twice solved my problem.
First, I restarted but it did not work. Then, I did almost everything but still didn't work.
Then, restarted again solved my problem.
I had the same symptoms, and apparently visual studio was using some proxy setting set up in IE. It turned out that my problem was one of the following:
My IE had been updated to IE 9, but the update wasn't completed because I hadn't completed the 'update wizard'
Some obscure proxy setting was set up in IE (a remnant of a selenium RC test run)
After completing the update wizard, and clearing all proxy settings, my NuGet package manager was working again.
Had the same issue, it was solution specific, and none of the above worked. I deleted the visual studio solution user options file (.suo) and restarted VS 2013 and now I can update and install packages again.
Finally resolved. I disabled an extension in Chrome. I had installed it to hide my real location.
To reset your Internet Explorer proxy settings yourself, follow these steps:1.On Windows XP, click Start, or on Windows Vista or Windows 7, click
2459687, and then click Run. On Windows 8 or Windows 8.1, to access the Run command, press the Windows logo key
Windows logo key+ R. Or, swipe in from the right edge of the screen, and then tap Search (or if you are using a mouse, point to the upper-right corner of the screen, move the mouse pointer down, and then click Search). Type Run in the search box, and then tap or click Run.
2.In the Run text box, copy (CTRL+C) and paste (CTRL+V) or type the following:
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyEnable /t REG_DWORD /d 0 /f
3.Click OK.
4.On Windows XP, click Start , or on Windows Vista or Windows 7, click
2459687, and then click Run. On Windows 8 or Windows 8.1, to access the Run command, press the Windows logo key
Windows logo key + R. Or, swipe in from the right edge of the screen, and then tap Search (or if you are using a mouse, point to the upper-right corner of the screen, move the mouse pointer down, and then click Search). Type Run in the search box, and then tap or click Run.
5.In the Run text box, copy (CTRL+C) and paste (CTRL+V) or type the following:
reg delete "HKCU\Software\Microsoft\Windows\CurrentVersion\Internet Settings" /v ProxyServer /f
6.Click OK.
i could not install globalize in V.S. 2015 and after trying all the answers i tried this. I opened my project in V.S. 2013 and it worked 1st time. hope this helps somebody else
Modem re-start fixed my problem.!
In my case(visual studio 2012-windows10 OS) the problem was with security protocols. Only TLS 1.2 was the enabled protocol and TLS1.1 and TLS1.0 was disabled for some reason. So going into registry and making changes to enable TLS1.0 and TLS1.1 solved the problem.
To enable these protocols you can follow directions on here
I fixed it by uninstall the system proxifier : WideCap
That happened to me when I tried to use Visual Studio from home being connected via public WiFi and my work station was configured to block connections in/out from Internet to VS2017. Check you local firewall setting and ensure that you have Allow for VS2017 when on Public network. (in Windows Defender Firewall & Advanced Security)
nugget.org was blocked in my network for security reason so all the nugget packages are installed from Artifactory via JFrog. After configuring my nugget package manager setting to the link provided by my employer the problem is resolved.
One route that I haven't seen people mentioning is setting the proxy for Nuget in your user folder.
Browse to C:\Users[yourProfile]\AppData\Roaming\Nuget and change your Nuget.config file to the following:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<config>
<add key="http proxy" value="http://yourProxy.yourCompany.org"/>
</config>
<packageSources>
<add key="nuget.org" value="https://api.nuget.org/v3/index.json" protocolVersion="3" />
</packageSources>
</configuration>
We set this setting and then Nuget immediately worked.
Ok, but now I get a credentials prompt!
If you also end up getting a credentials prompt when trying to load packages from Nuget in Visual Studio, you should try to manually browse to http://www.nuget.org/downloads. I've seen proxies like BlueCoat display a Content Filter Warning the first time someone visits a site, and since you can download content from Nuget, it get's flagged.
So you may need to browse there one time to click 'Accept Terms', and then you'll be able to access it.
If you are using a developer server, sometimes the TLS is not active. Reach with regedit.exe the following path of register, and if not present, add the following keys. Reboot and try again nuget online from visual studio.
To enable TLS 1.2 support in Windows Schannel
From Notepad.exe, create a text file named tls12-enable.reg.
Copy, and then paste the following text.
Windows Registry Editor Version 5.00
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2]
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Client]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SecurityProviders\SCHANNEL\Protocols\TLS 1.2\Server]
"DisabledByDefault"=dword:00000000
"Enabled"=dword:00000001
Save the tls12-enable.reg file.
Double-click the tls12-enable.reg file.
Click Yes to update your Windows Registry with these changes.
Restart your computer for the change to take effect.
Internet Properties -> LAN Settings -> uncheck "Automatically detect settings"
Steps:
Close Fiddler.
Restart Visual Studio.