git@git.oschina的SSH连接问题

oreax 发布于 2015/08/27 18:41
阅读 5K+
收藏 0

初学git,遇到一些问题:

项目目录.git目录下的配置文件,如果其url是https方式的,则每次push的时候都要输入oschina用户名和密码,当然输入用户名和密码就能push成功;

如果其url是ssh方式的,则每次push都提示说输入密码,无论输入什么密码都被拒:

git@git.oschina.net's password:
Permission denied, please try again.



搜了一圈,说可能是linux系统的hosts.allow和hosts.deny的问题。

我的是ubuntu14,装了sshd,客户端用putty连接的,所以我的hosts.allow里写了一些本地局域网地址,而hosts.deny写了“ALL”。

问题是:如果用https方式push,能否实现少输几次帐号,不要每次push都要输入帐号密码;如果用ssh方式,怎么配置?


加载中
3
西南茂
西南茂

https方式我不清楚,就说下ssh方式:

首先,你要在你自己的机器上生成一堆ssh密钥,命令如下:

ssh-keygen -t rsa -C "youremail@qq.com"



这里一定要注意出现的提示让你输入什么东西的时候都不要管,一路回车就可以了。

然后去你自己的用户家目录(windows是C:\User\你的用户名\  linux是/home/你的用户名/)下的隐藏文件夹.ssh里面,有两个密钥,一个是公钥,以.pub结尾,另外一个就是私钥。

接下来,登录git.oschina.net,页面右上角---个人资料----ssh公钥,然后把那个公钥用文本编辑器打开并复制里面的内容,在网页中添加公钥就可以了。

到现在为止,假设你还没有建立好项目,那么你只需要切换到你自己的工作目录下:

mkdir gittest
cd gittest
git init
git remote add origin git@git.oschina.net:mao/gittest.git
git pull origin master
git push origin master



其中,mao是你在git.oschina.net的用户名,打开网页就能看到,gittest是你的项目名称。

0
51clocker
51clocker

需要把你的公钥添加到git.oschina.net上。

ssh-keygen -t rsa -C "git@oschina.net"



然后一路回车

0
Zoker
Zoker

需要加你的key到http://git.oschina.net/keys

0
duoduo3_69
duoduo3_69

https方式长期存储密码:

git config --global credential.helper store

输入一次密码后就会存起来 以后不用输入密码了

返回顶部
顶部