问题提出

我们将github上的工程clone到本地后,修改完代码后想要push到github,但一直会有提示输入用户名及密码,如下图:

 

原因分析

出现这种情况的原因是我们使用了http的方式clone代码到本地,相应的,也是使用http的方式将代码push到服务器。

如图所示,在github系统上克隆代码的地址默认采用的是http的方式,我们一般这样clone代码:

git clone https://github.com/yychuyu/linux-system-programming.git

这就容易导致这个问题的出现。

而如果采用ssh方式的话,是这样clone代码的:

git clone git@github.com:yychuyu/linux-system-programming.git

 

解决办法

解决办法很简单,将http方式改为ssh方式即可。

先查看当前方式:

git remote -v

 

把http方式改为ssh方式。先移除旧的http的origin:

git remote rm origin

 

再添加新的ssh方式的origin:

git remote add origin git@github.com:yychuyu/linux-system-programming.git

 

检查一下有没改变成功:

 

改动完之后直接执行git push是无法推送代码的,需要设置一下上游要跟踪的分支,与此同时会自动执行一次git push命令,此时已经不用要求输入用户名及密码啦!

git push --set-upstream origin master

 

---------------

我是良许,世界500强外企 Linux 开发工程师,专业生产 Linux 干货。欢迎关注我的公众号「良许Linux」,回复「1024」获取最新最全的技术资料,回复「入群」进入高手如云技术交流群。

 

 

 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐