Why TFS with GIT is not working from command line?

2020-05-25 03:58发布

问题:

I want to use the git command line tools with the Microsoft Team Foundation Server Git repositories.

But every time I want to access to remote repos the authentication fails. And of course I am using Active Directory (this is a TFS server). The git repo management works perfectly from Visual Studio. (even push, sync, clone, etc).

Cloning into 'blabla'
fatal: Authentication failed for 'http://server:8080/tfs/BlaCollection/_git/blabla/'

I have intented using this patters and always fail.

  • DOMAIN\username
  • username@domainforest

Anyone has get connected using command line tools to a TFS with git server? In my company we use tokens to log on Windows, may be the reason?

回答1:

Windows Credentials -> Generic Credentials

Then add a new item with "git:" in front of the http:// i.e.:

git:http://Example.com

add domain\user as user, and password



回答2:

Finally a collegue hit the solution and I will post it here:

Use the command:

git config --global credential.http://[tfs_server].integrated true

Of course, replace [tfs_server] with your own TFS server host name.

When Credential Manager asks for credentials just leave blanks and press OK. (I this way authentication will be performed using Kerberos).

Check here for more information https://github.com/Microsoft/Git-Credential-Manager-for-Windows#q-i-thought-microsoft-was-maintaining-this-why-does-the-gcm-not-work-as-expected-with-tfs



回答3:

I did two things to make it work. Try below.

  1. Update your git to the latest version.
  2. Open Windows Credential Manager by typing the same in Windows Search and remove the git credentials in the generic credentials as shown below


回答4:

No matter, how your company use to log on windows, you just need the account which login in the TFS. You can find the account info in Windows-Control Panel- Credential Manager

by PatrickLu-MSFT

This is what did it for me. I just opened the Windows Credential Manager as stated above and edited the credentials because some how it was stuck to my previous password.



回答5:

For myself, I went to Control Panel > Credential Manager > Windows Credentials.

I tried to delete only the Generic Credentials with git: in front of them, but the git commands still didn't work.

After I deleted the Windows Credentials for the TFS server, then the git commands started to work.



回答6:

If you face this error after changing password for TFS,

Go to Control Panel\User Accounts\Credential Manager

Under the Windows Credentials, Modify the password for the specific Internet or network address.



回答7:

Did you change your AD password recently ?

  • If so, (or not lol), Go to Control Panel > User Accounts > Credential Manager > Windows Credentials.
  • Locate entries starting with git:http...
  • Either Remove that/those entry, or edit the password to the new one. Click on the Down Arrow and you see info about that entry, including the Remove/Edit links


回答8:

For me it was that a proxy had been set in config. >git config --global --unset http.proxy made it work. Running a VM Windows Server 20196 and TFS2015 usind Kerberos (Windows Authentication).



回答9:

My solution

Open Control Panel > Credential Manager > Windows Credentials.

Under Generic Credentials -> Add a generic credential

Inter network address: git:https://tfs.[google].com

admin:

password:

Replace google with the domain of your company. Put your EID or credentials to log into TFS.



回答10:

Try to use the Authentication --username and --password parameters with the command directly such as:

git tfs clone http://tfs:8080/tfs/DefaultCollection $/Project1 -u=Domain\username -p=xxx

-u, --username=VALUE stands for TFS username
-p, --password=VALUE stands for TFS password

No matter, how your company use to log on windows, you just need the account which login in the TFS. You can find the account info in Windows-Control Panel- Credential Manager


Visual Studio store credentials in the Windows Credential Manager, which is compatible with the Git Credential Winstore. If you install Git Credential Winstore, it should permanently authenticating with Git repositories, you can also give this tool a try.