One unhappy side effect of upgrading to Xcode 7 is that I can no longer push to my Gitlab repo. I have been pushing and pulling from my project without problem for the last two years, so I suspect Xcode 7 is doing something different. I have verified my u/p for Gitlab by logging into and out of it via the web interface. When I go to Xcode > Preferences > Accounts, select the gitlab project, I see that the username and password are in there (just like they have been for 2 years) and I verify that they are correct.
It is worth noting that I can successfully post from Terminal, however, I do not wish to use Terminal to push my code to Gitlab on a regular basis. Has anyone else encountered this problem since upgrading? Any suggestions as to a fix?
The specific error I am getting is "Authentication failed because the user name or password was incorrect." This error appears in the Accounts dialog, as well as after trying to perform a push to the gitlab repo.
So this one was quite a bear to wrestle, and to be honest, I am not sure what the root cause of this error was, but the way I resolved it was this:
Voila! Worked. This was definitely the nuclear option but it got me working again. I firmly believe that upgrading Xcode to 7 screwed something up. If anyone else has this problem I hope this resolves it!
I found that Xcode 7 does not like tilt "~" in the URL anymore. Please run "git config --list" and check the URLs. For example, my remote URL looked like this:
Xcode can push fine after I run the following commands:
Same issue with xcode 7.
I managed to fix this issue by regenerating the RSA keys and updating them in Gitlab.
Edit: unfortunately this worked only 1 timeEdit2: After working one time "right out of the box" after changing the SSH keys, the second time I got the question for login credentials, the dialog where you can choose between username/password and SSH keys. Choosing SSH key then worked. After that the dialog didn't appear anymore.
So, to summarise:
My problem was that Xcode tried using the wrong key file : .ssh/id_rsa instead of .ssh/id_dsa
My issue was that id_rsa was a symbolic link.
My .ssh/id_rsa file was a symbolic link to another file. In xcode, I had specified this symbolic link as my ssh private key file.
In this configuration, git pull was working but git push was failing.
Then, in xcode, I changed the ssh private key file to point to a regular file (the file that the symbolic link was pointing to). And voila, both push and pull are working now.
Xcode Version 8.1 (8B62)