我正在使用Xcode 4.6来开发我的项目,而我正在使用本地存储库功能。但是,我希望能够将我的存储库推送到远程ssh服务器。
我尝试了以下但是没有用: 我去了组织者然后到我的存储库,然后我添加了一个新的遥控器,其中包含以下说明: - 姓名:只是一个名字所以我已经把我的项目名称 - 位置:我已经放了一个ssh路径:user @ domain:path_to_my_.git_folder
然后我输入了我的ssh密码,但是没有确认按钮。
完成所有这些后,我返回开发窗口并转到File-> Source Control-> Push但是它说没有找到遥控器。
所以我想知道我该怎么做才能让它发挥作用。
谢谢。
答案 0 :(得分:4)
我找到了github和bitbucket上repo的最佳解决方案是创建一个没有密码的SSH密钥对。
$ cd .ssh
$ ssh-keygen -t rsa -b 2048 -f github_id_rsa
$ vi config
然后添加以下内容:
Host github
HostName github.com
User git
IdentityFile ~/.ssh/github_id_rsa
然后将回购称为:
ssh://github/trojanfoe/myrepo
^^^^^^
(note that's the name of the "Host" from the config file, not github.com)
这在Xcode中运行良好,但是在 pull 期间我看到回购旁边的“绿灯”,但在推送期间回购旁边的“红灯” (这可能是Xcode 5.1测试版中的一个错误),但它没有任何投诉而且不需要密码,如果你使用Jenkins进行发布版本,这是很好的。
偏好设置下的存储库> 帐户也无法使用ssh别名进行连接,但奇怪的是,它们在执行源代码管理操作时运行正常:
答案 1 :(得分:0)
你的地址应该是这样的“
ssh://git@git.urlOrLocal.com:2223/ios-app.git
您不需要确认按钮。也尝试不在那里输入密码。当你试图推动时,你会被要求输入它。
答案 2 :(得分:0)
我使用ssh-agent解决了这个问题,所以:
eval `ssh-agent -c` [start the ssh-agent]
ssh-add ~/.ssh/id_dsa [enter your passphrase when you are prompted for it]
ssh-add -l [lists out what keys are loaded in the agent]