How to solve an error while cloning a private repository - github

I have a repository which is private. Before, I was able to clone it from my terminal by giving the username and password. Few days back I got a mail from GitHub to enable 2FA in my account. I did but now I see my account password doesn't seem to work when I give my password in my terminal. I use Google Authenticator as my TOTP app and I also tried giving that password but still it says authentication failure. Please help me out

You need a "Personal Access Token" (PAT).
In order to generate one, go to your GitHub settings and click on the category called "Developer settings". In that section, go to personal tokens.
There you can generate a new access token (make surer to check repo). When you clone your repository, use this token instead of your password. Now you should be able to clone it.
You can read more about this process here: https://docs.github.com/en/github/authenticating-to-github/creating-a-personal-access-token

Related

Use token to push some code to GitHub - "Support for password authentication was removed" [duplicate]

This question already has answers here:
Message "Support for password authentication was removed. Please use a personal access token instead."
(47 answers)
Closed 1 year ago.
Error message when using git push:
Support for password authentication was removed on August 13, 2021. Please use a personal access token instead.
remote: Please see https://github.blog/2020-12-15-token-authentication-requirements-for-git-operations/ for more information.
fatal: unable to access 'https://github.com/codingTheWorld777/react-mini-projects.git/': The requested URL returned error: 403"***
I cannot use my token to access GitHub, so how can I push code to GitHub?
GitHub announced their intent to require the use of token-based authentication for all authenticated Git operations. They will no longer accept account passwords when authenticating Git operations on GitHub.com:
Generate token:
Go to your GitHub account token settings
Generate a token
On Mac:
Go to keychain Access
Press the Login tab and all items
Click GitHub key
Change the password to the recent generated token
On Windows:
Go to Control Panel → User Accounts → Credential Manager
Edit the Generic Credential of GitHub
Paste the token instead of the password
You need to change the remote URL with:
git remote set-url <stream> https://<token>#github.com/<username>/<repo>
token can be found here.
I also encounter this problem today, on macOS.
I solve this problem by:
First, get a token! Follow the guidance of GitHub. I think you can just click the link provided in the warning.
Second, change the key chain on macOS:
Search "Keychain" on macOS.
Search "GitHub".
Change the password in the one that with "Internet Password", using your new token.
Then, my problem is solved and I can "git push" now.
Step 1: Go to your GitHub account → Settings → Developer settings → Personal access tokens → Generate / regenerate your token
Step 2: Go to https://cli.github.com and download GitHub CLI
Step 3: Go to your command line or Terminal → gh auth login and follow with login credentials. Done.
I have the same problem. For me the solution was install the GitHub CLI in https://cli.github.com/. After installing in my OS, I ran gh auth login in my terminal and logged in through the browser with the access token that I generated in the GitHub profile. Follow:
My Account → Settings → Developer settings → Personal access tokens [GENERATE NEW TOKEN]
First of all, you need to create a personal access token in Creating a personal access token
git clone https://github.com/username/repo.git
Username: your_username
Password: your_token
Solution for Mac:
First generate a token from GitHub. And replace your password with the token from the keychain access in the GitHub section.
You need to create a personal access token. You can find the instructions on creating personal access token in Creating a personal access token
Make sure you keep the access token secure & secret. After that you need to replace your current saved password in the device (laptop/desktop) with the access token. In macOS you can search for Keychain and find GitHub with an Internet password and replace it with your access token. For instructions, see Updating credentials from the macOS Keychain.
In Windows, it might be Credential Manager (I'm not sure). Check this out: How to update your Git credentials on Windows

Source tree fix for git Password authentication is temporarily disabled as part of a brownout. Please use a personal access token instead [duplicate]

This question already has answers here:
Password authentication is temporarily disabled as part of a brownout. Please use a personal access token instead [duplicate]
(25 answers)
Closed 1 year ago.
FYI this is specifically for sourcetree
I am having this error when pulling in sourcetree, it was working just fine yesterday but it suddenly had this error.
git -c diff.mnemonicprefix=false -c core.quotepath=false --no-optional-locks fetch origin
remote: Password authentication is temporarily disabled as part of a brownout. Please use a personal access token instead.
remote: Please see https://github.blog/2020-07-30-token-authentication-requirements-for-api-and-git-operations/ for more information.
fatal: unable to access 'https://github.com/London-Foster/frontend.git/': The requested URL returned error: 403
I tried having a personal access token and use it on source tree but still was not able to login.
1 - Generate a new token from git dev settings
2 - In SourceTree, you just need to change your repository settings there:
3 - Change the URL/Path with the new format:
https://<USERNAME>:<TOKEN>#<GIT_URL>.git
4 - Press OK and it is good now!
in source tree > open repo settings > remotes tab > edit the remote "URL/path" to be
https://{personal-access-token>#github.com}/{<my-repo>}.git>
then save and try to push
i did like #heratyian answer and works fine.
Step by step using the terminal and github
Remove repo
git remote remove origin
Generate personal access token
https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token
Add remote back using personal access token
Remember to replace <personal-access-token> and <my-repo> with your credentials.
git remote add origin https://<personal-access-token>#github.com/<my-repo>.git>
If on Windows, open the Credentials Manager and delete your github credentials if any.
If on macOS, open the Keychain Access app and delete your github credentials if any.
Then, get a Personal Access Token by following the guide here https://docs.github.com/en/github/authenticating-to-github/keeping-your-account-and-data-secure/creating-a-personal-access-token
Then push your code as normal and when asked enter your newly generated personal access token.
I went:
Tools>Options>Authentication. Edited my account.
I changed Authentication from Basic to OAuth. And now the brownout no longer affects me.
After setting up my PAT and setting up my account in Sourcetree menu -> Preferences -> Accounts, I still got the brownout error.
Adding your account in SourceTree seems to prompt for a password upon opening.
I set up git to cache my credentials:
https://docs.github.com/en/get-started/getting-started-with-git/caching-your-github-credentials-in-git
Then in SourceTree I re-cloned my repo. Got prompted for a password - entered my PAT. Now it's working fine.
I have solved the issue, just to ad up on woland's comment.
First add a personal access token then add it in your credentials
Second add a remote by clicking the gear settings then add a remote
Add the remote of your repository then link it with your account that has logged personal access token.
lastly fetch to that remote origin.

Github 2FA won't let me push to branch

Just added 2FA for Github but now when I go to push changes from the terminal to a branch and I try to authenticate myself with username + password I get rejected because there's nowhere to input my 2FA code...I know my username and password are correct because I can login to the site (with 2FA code). Terminal doesn't provide a space to input that code. How are others working around this?
You'll need a personal access token or SSH key.
The details are here: Accessing GitHub using two-factor authentication - Using two-factor authentication with the command line

How to use visual studio code with github and 2FA

Our organisation required us to add 2FA to github. Unfortunately,
now we cant commit our work in visual studio code. VSCode prompts for username and password. It doesnt know about 2FA.
There are some very old posts saying to use a personal access token (PAT), e.g.
https://colinmackay.scot/2015/07/15/two-factor-authentication-with-github-and-visual-studio-2013/comment-page-1/#comment-29984
http://www.anilsezer.com/connecting-github-from-visual-studio-after-twofactor-authentication-enabled
However, this does not work either.
The first article says enter the PAT as the username and leave the password blank in the VSCode github login dialog. This does not work as you cant sumbmit with a blank password. Entering a random password gives
Fatal: HttpRequestException encountered.
An error occurred while sending the request.
fatal: HttpRequestException encountered.
An error occurred while sending the request.
remote: Invalid username or password.
fatal: Authentication failed for 'https://github.com/xxx/xxx.git/'
The second article says to use your user/email as the username, and enter the PAT as the password. This is also what the VSCode documentation says. Tired this too, same problem.
Anyone got this working?
Also, does anyone know which of the "scopes" is required for VSCode? I just ticked "repo". Could this be the problem, are more required?
I would advise you can use Personal access tokens.
Just click on your profile picture on the site https://github.com/ (after login), then on Settings > Personal access tokens > Generate new token. Follow the wizard to select what to grant, at least you'll need repo.
On VS Code you provide your usual user name and for password you provide the newly generated PAT.

GitKraken Login TO VSO

I have registered an account with GitKraken and confirmed that I have rights to a repo on VSO. When I attempt to login, my uid and pwd and cleared from the text box and I can't login
Any guesses where the point of failure is? When I use Visual Studio, I can log into that TFS repo no problem
You can't use your VSO login directly in Git Kraken.
There are two ways you can approach this:
- Use a personal access token. In VSO, click on your profile icon -> Security - Personal access tokens. Create a new access token and use that as a password. Personal access tokens have an expiry date, so you will have to create a new one after some time.
use ssh. That is what I am using, as I think it is more convenient, but a bit more steps to set up. Here is a tutorial on how to set it up with VSO: https://learn.microsoft.com/de-de/vsts/repos/git/use-ssh-keys-to-authenticate?view=vsts