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
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!
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)
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 time
Edit2: 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
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:
ssh://nobody@nowhere.com/~/product1.git
Xcode can push fine after I run the following commands:
git remote set-url origin ssh://nobody@nowhere.com/home/nobody/product1.git
git config branch.master.remote ssh://nobody@nowhere.com/home/nobody/product1.git