Unable to authenticate with Git Bash to Visual Studio Team Services

  1. Enable alternate authentication credentials and set secondary username

    Enter image description here

  2. Create a personal access token for your Visual Studio Team Services account and copy the token

    Enter image description here

  3. Open Git Bash and go to the folder that you cloned your repository to and enter the following command to make sure it stores the credentials and you don't need to enter it every time:

    git config credential.helper store
    
  4. git pull origin [your branch]

    It asks for user name and password. Enter user name and token as password

    enter image description here


On Windows, you can easily create a Personal Access Token using the Git Credential Manager. It's what Visual Studio Team Services now seems to recommend over the Alternate authentication credentials.

Just install that utility, and then the next time you git pull from Git Bash, it will prompt you for your Visual Studio Team Services access credentials. It will then create a Personal Access Token in your VSTS account, and add a couple of entries to your local Windows Credentials store.

Quote from the site:

It magically works when credentials are needed. For example, when pushing to Visual Studio Team Services, it automatically opens a window and initializes an oauth2 flow to get your token.


You need to enable Alternate Authentication Credentials if you want to use other Git clients outside of Visual Studio...

To set up alternate creds in Visual Studio Team Services (VSTS), click on your name/icon on the top right -> Security -> Alternate Authentication Credentials

Edit: Add more details about this from VSTS (taken from the alternate credentials screen)...

ALTERNATE AUTHENTICATION CREDENTIALS

Some applications that work outside the browser (including Team Explorer Everywhere command line client and the git-tf utility) require basic authentication credentials. Other applications do not properly handle using an e-mail address for the user name during authentication.

To work with these applications, you need to enable alternate credentials, set a password, and optionally set a secondary user name not in the form of an e-mail address. Please note that alternate credentials cannot be used to sign in to the service from a web browser or outside of these applications.