美文网首页开发集中营工具癖设计
Git之SSH与HTTPS免密码配置

Git之SSH与HTTPS免密码配置

作者: 杨玉杰 | 来源:发表于2016-12-22 12:58 被阅读5539次

Git作为当前最受欢迎的版本控制软件,使用是很频繁的。但每次使用git push等操作时都要输入密码,实在是挺麻烦的。本文对使用SSH与HTTPS两种通讯协议讨论一下免密码配置。
注:这个过程在所有操作系统上都是相似的:)

SSH通信协议

GitHub版

许多Git服务器都支持使用SSH公钥进行认证,当然也包括github。
首先你需要确认一下自己是否已经拥有密钥了,默认情况下,用户的 SSH 密钥存储在其 ~/.ssh 目录下。进入该目录并列出其中内容,你便可以快速确认自己是否已经拥有密钥:

$ cd ~/.ssh
$ ls
authorized_keys2  id_rsa       known_hosts
config            id_rsa.pub

我们需要寻找一对 id_rsaid_dsa 命名的文件,其中一个带 .pub 扩展名。 '.pub'文件是你的公钥,另一个则是私钥。如果没有找不到这样的文件(或者根本就没有.ssh目录),我们可以通过 ssh-keygen 程序来创建它们。

#邮箱可以随便填
$ ssh-keygen -t rsa -C "xx@xx.com"

首先 ssh-keygen 会确认密钥的存储位置和文件名(默认是 .ssh/id_rsa),然后他会要求你输入两次密钥口令,留空即可。所以一般选用默认,全部回车即可。

接下来我们登陆到GitHub上,右上角小头像->Setting->SSH and GPG keys中,点击new SSH key。
Title:可以随便填写,但最好起的名字能让自己知道这个公钥是哪个设备的。
Key:将上面生成的.pub文件中的所有内容复制到这里。
点击下面的Add SSH key即可。
然后你就会发现可以免密码访问了

Git服务器

如果服务端是自己搭建的git服务器,生成密钥公钥对的步骤是一样的。
然后将生成的 .pub 文件内容,导入到git服务器 /home/git/.ssh/authorized_keys 文件内,一行一个。
然后你就会发现git push 不再需要密码了
搭建git服务器和相关免登陆的详细步骤可参考我的另一篇 手把手教你搭建git服务器

HTTPS通信协议

上面讲了SSH方式的免密码,接下来讲一下越来越常用的HTTPS方式的免密码
新建文件并保存密码

$ touch ~/.git-credentials
$ vim ~/.git-credentials

添加内容

https://{username}:{passwd}@github.com

添加git配置

$ git config --global credential.helper store

查看~/.gitconfig文件变化

[credential]
    helper = store

然后在尝试一下git push不再在需要密码了

git系列文章
git常用命令及使用心得
手把手教你搭建git服务器

相关文章

  • Git之SSH与HTTPS免密码配置

    Git作为当前最受欢迎的版本控制软件,使用是很频繁的。但每次使用git push等操作时都要输入密码,实在是挺麻烦...

  • 常用Git命令

    设置本机绑定SSH公钥,实现免密码登录 git config -l 查看配置 git config --syste...

  • CentOS 6.5之SSH免密码登录配置

    CentOS 6.5之SSH免密码登录配置 来源:Linux社区 作者:fefjay CentOS6.5之SSH ...

  • linux 文件数据增量同步

    首先配置:ssh免密码登录 ssh免密码登录 同步脚本: /usr/bin/rsync -avz /datamnt...

  • Linux搭建Git服务器

    创建git组,创建git用户,修改git密码 配置环境变量 创建仓库 允许SSH免密登录 本地生成公钥和私钥 下载...

  • Ubuntu的ssh

    安装ssh 创建root用户 配置本机无密码ssh登录 spark0免密码ssh登录spark1 spark1免密...

  • 6. 搭建 CentOS 集群 - 配置4台 CentOS 为

    配置本机 SSH 免密码登录 在本地 CentOS 中配置 SSH 免密码登录 生成本机的公钥,过程中不断敲回车即...

  • ssh和scp使用

    ssh客户端基本使用 scp使用 ssh免密码登录 ssh配置别名

  • ssh免密码登录服务器,免密码推送git代码

    title: ssh免密码登录Linux服务器,免密码推送git代码date: 2018-08-04 00:49:...

  • ssh 应用

    ssh 介绍 我为什么用: 免密码登录服务器 免密码提交 git 一、ssh 密钥对生成 确认存放目录、加密后,密...

网友评论

    本文标题:Git之SSH与HTTPS免密码配置

    本文链接:https://www.haomeiwen.com/subject/deocvttx.html