67

Trying to access private corporate tfs. They gave me access by giving appropriate rights to windows user (domain\login).

I'm fine with accessing web interface of tfs, browse repository and stuff.

But when I try to run

 git clone https://tfs.somehostname.com/tfs/somefolder/_git/therepository

It fails with

Cloning into 'therepository'...

fatal: Authentication failed for 'https://tfs.somehostname.com/tfs/somefolder/_git/therepository/'

Tried with home pc without corporate network stuff - same error.

Tried in PowerShell, Git Bash, Clone via VisualStudio - same error.

SSH is closed (gave request timeout).

Web & Git both ask for credentials once (tried deleting in Credentials Manager - asks again, after submitting web is fine, git fails)

Corporate helper tried to help, but all he gave is tfs logs. He says, my username doesn't come with requests (tracked by syncing my attempts timestamps with logs).

2018-07-19 07:04:00 SOMEIP GET /tfs/SOMEFOLDER/_git/REPOSITORY/info/refs service=git-upload-pack 443 - ANOTHERIP git/2.12.2+(Microsoft+Windows+NT+6.3.9600.0;+Win32NT+x64)+CLR/4.0.30319+VS15/15.0.0 - 401 2 5 62
2018-07-19 07:23:00 SOMEIP GET /tfs/SOMEFOLDER/_git/REPOSITORY/info/refs service=git-upload-pack 443 - ANOTHERIP git/2.18.0.windows.1 - 401 2 5 62
2018-07-19 07:23:00 SOMEIP GET /tfs/SOMEFOLDER/_git/REPOSITORY/info/refs service=git-upload-pack 443 - ANOTHERIP git/2.18.0.windows.1 - 401 1 3221225581 187

while others include it

2018-07-19 05:44:27 SOMEIP GET /tfs/SOMEFOLDER/_git/REPOSITORY/info/refs service=git-upload-pack 443 DOMAIN\LOGIN ANOTHERIP git/2.12.2+(Microsoft+Windows+NT+6.1.7601+Service+Pack+1;+Win32NT+x64)+CLR/4.0.30319+VS15/15.0.0 - 200 0 0 265
RBT
  • 18,275
  • 13
  • 127
  • 181
SLCH000
  • 1,055
  • 1
  • 11
  • 14
  • 1
    Did you tell `git` who you are by setting your email/password? Check that by looking up `git config --list` and provide the output with your question. You probably have to do `git config --global user.email YourEmail@Company.com` – Sandra K Jul 19 '18 at 13:44
  • Email is present, no password. Here is full output: https://pastebin.com/WKWPqejk i should add that im logged as different user from allowed one and even domain of allowed user is unavailable from this machine – SLCH000 Jul 19 '18 at 13:52
  • 3
    Try to put the username/password on the git clone: `git clone https://username:password@https://tfs.somehostname.com/tfs/somefolder/_git/therepository/` – Shayki Abramczyk Jul 19 '18 at 13:58
  • 1
    Tried `https://domain%5Cusername@tfs.somehostname.com/tfs/somefolder/_git/therepository/` - didnt work. Good idea tho. – SLCH000 Jul 20 '18 at 05:51
  • https://stackoverflow.com/questions/42830318/getting-fatal-authentication-failed-error-when-sending-git-commands-in-windo – Aydin Özcan Apr 07 '20 at 16:10

13 Answers13

94

I'm facing exactly same error when I'm trying to clone a repository on a brand new machine. I'm using Git bash as my Git client. When I ran Git's command to clone a repository it was not prompting me for user id and password which will be used for authentication. It was a fresh machine where not a single credential was cached by Windows credential manager.

As a last resort, I manually added my credentials in credentials manager.

Go to > Control Panel\User Accounts\Credential Manager > Windows Credentials

Click Add a Windows credential link and then Supply the details as shown in the form below and you're done:

enter image description here

I had put the details as below:

Internet or network address: <gitRepoServerNameOrIPAddress>
User Name: MyCompanysDomainName\MyUserName
Password: MyPassword

Next time you run any Git command targeting a repository set up on above address this manually created credential will be used.

It is also important if you have a git command line you close it and reopen it for changes to be applied.

Note: Remember that when your password expires next time as per your corporate password policy then you'll have to update the password on this screen after setting new password.

RBT
  • 18,275
  • 13
  • 127
  • 181
  • 2
    this locked my account a couple of times when i was forced to change the pw, the creds are not updated, mentioning this just for awareness. – fl0w Feb 21 '19 at 12:03
  • 4
    I had to add address "git:" in the beginning of the address as ```git:https://www.YourWebsiteAddress.com``` – AZ_ May 11 '20 at 12:21
  • 1
    This worked for me, even when using WebStorm as my IDE – David Thomas Sep 03 '20 at 01:10
  • 2
    This is the perfect solution!! Thanks – pampua84 Sep 29 '20 at 07:59
  • 1
    To clarify, the first box should be a host name or IP address like MyServer or www.YourServer.com or 123.1.1.5 – steve Jan 21 '21 at 07:58
  • I had to add to the ```generic credential``` section and add the url as @AZ pointed out. (i.e. do ```git:https://etc.com```) then simply adding my username and passowrd . – Rika Feb 24 '21 at 07:09
43

Go to > Control Panel\User Accounts\Credential Manager > Manage Windows Credentials and remove all generic credentials involving Git. (This way you're resetting all the credentials)

After this, when you clone, you'll be newly and securely asked your Git username and password instead of Authentication error. Similar logic can be applied for Mac users using Sourcetree.

Hope it helps.

unobatbayar
  • 868
  • 6
  • 20
41

Adding username and password has worked for me: For e.g.

https://myUserName:myPassWord@myGitRepositoryAddress/myAuthentificationName/myRepository.git
Mike D3ViD Tyson
  • 1,002
  • 1
  • 12
  • 24
Elwont
  • 527
  • 3
  • 3
2

The culprit was russian account password.

Accidentally set up it (wrong keyboard layout). Everything was working, so didnt bother changing it.

Out of despair changed it now and it worked.

If someone looked up this thread and its not a solution for you - check out comments under the question and steps i described in question, they might be useful to you.

SLCH000
  • 1,055
  • 1
  • 11
  • 14
2
  1. Go to Control Panel\All Control Panel Items\Credential Manager and select Generic Credentials.
  2. Remove all the credential with your company domain name.
  3. Git clone repository from git bash terminal once again and it will ask for password and username. Insert it again and you are all set!
Sohini Roy
  • 21
  • 2
1

In case someone is facing this issue with Azure DevOps, there the fix is very easy, just adding Git credentials to a repository.

enter image description here

Martin Staufcik
  • 5,801
  • 4
  • 32
  • 46
1

As the other answers suggest, editing/removing credentials in the Manage Windows Credentials work and does the job. However, you need to do this each time when the password changes or credentials do not work for some work. Using ssh key has been extremely useful for me where I don't have to bother about these again once I'm done creating a ssh-key and adding them on the server repository (github/bitbucket/gitlab).

Generating a new ssh-key

  1. Open Git Bash.

  2. Paste the text below, substituting in your repo's email address. $ ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

  3. When you're prompted to "Enter a file in which to save the key," press Enter. This accepts the default file location.

  4. Then you'll be asked to type a secure passphrase. You can type a passphrase, hit enter and type the passphrase again.

Or, Hit enter twice for empty passphrase.

  1. Copy this on the clipboard:

    clip < ~/.ssh/id_rsa.pub

And then add this key into your repo's profile. For e.g, on github->setting->SSH keys -> paste the key that you coppied ad hit add

Ref: https://help.github.com/en/enterprise/2.15/user/articles/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent#generating-a-new-ssh-key

You're done once and for all!

ABGR
  • 3,606
  • 1
  • 15
  • 35
1

After trying almost everything on this thread and others, continuing to Google, the only thing that worked for me, in the end, was to start Visual Studio as my AD user via command line:

cd C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\IDE
runas /netonly /user:<comp\name.surname> devenv.exe

Original issue: [1]: https://developercommunity.visualstudio.com/content/problem/304224/git-failed-with-a-fatal-errorauthentication-failed.html

My situation is I'm on a personal machine connecting to a company's internal/local devops server (not cloud-based) that uses AD authorization. I had no issue with TFS, but with git could not get the clone to work (Git failed with a fatal error. Authentication failed for [url]) until I did that.

0

I had the same issue when Cloning the repository via Bash/VS Code with "fatal:Authentication failed". I used SSH Key authentication instead to connect my repository following the article: [https://docs.microsoft.com/en-us/azure/devops/repos/git/use-ssh-keys-to-authenticate?view=azure-devops&tabs=current-page][1] I didn't get any errors after with any bash commands!

Kiran Modini
  • 161
  • 1
  • 4
0

Rather than escape my password I left it out and was prompted for it, but only when I included the domain name before my username:

git clone https://some-dom-name\firstname.lastname@tfs.somedomain.com/tfs/...
TreeAndLeaf
  • 768
  • 1
  • 10
  • 12
0

In my case the error was some old username and password was stored in cache.

So I removed it by going to sourceTree and delete the existing account.

Now for the new clone then it will ask you for the password for the repo. enter image description here

Akshay Vijay Jain
  • 6,159
  • 4
  • 31
  • 34
0

I had this same issue with my windows 10 machine, I tried many solutions but nor worked until I installed the latest git version. https://git-scm.com/downloads.

Samuel
  • 199
  • 1
  • 9
0

Go to:

Control Panel -> User Accounts -> Credential Manager -> Windows Credentials -> Generic Credentials >> Remove old credentials which were saved for the specific url

Then when you freshly clone the repository it will prompt for credentials.

Chathurika Senani
  • 658
  • 2
  • 9
  • 21