8

Git 中 ssh key、https 配置及用户名、邮箱基本信息配置

 3 years ago
source link: https://lianpf.github.io/posts/%E5%BC%80%E5%8F%91%E6%97%A5%E8%AE%B0/06.git%E4%B8%ADssh%E4%B8%8Ehttps/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
neoserver,ios ssh client

git 作为当前最受欢迎的版本控制软件,使用是很频繁的。但是…

git 作为当前最受欢迎的版本控制软件,使用是很频繁的。但是有的小伙伴发现每次使用 git push 等操作时都要输入密码,实在是麻烦。这里对使用 SSH 与 HTTPS 两种通讯协议介绍一下免密码配置


一、本地Git基本信息配置

本地Git用户名、邮箱等基本信息配置

(1) 查看

验证『当前本地』是否已配置账号信息

$ git config --list // 查看所有
$ git config --global  --list // 查看当前用户(global)配置
$ git config --system  --list // 查看系统config
$ git config --local  --list // 查看当前仓库配置信息

// 查看指定信息
$ git config user.name
$ git config user.email

(2) 新增

第一次配置,需要设置Gituser nameemail

$ git config --global user.name "lian" // you name
$ git config --global user.email "[email protected]" //you email

(3) 修改

// 覆盖
$ git config --global user.name "yourName"
$ git config --global user.email "[email protected]"

// 替换
$  git config --global --replace-all user.name "yourName"
$  git config --global --replace-all user.email "[email protected]"

(4) 删除

$ git config --global --unset user.name "yourName"
$ git config --global --unset user.email "[email protected]"

二、ssh keyhttps差异

  • clone项目: 使用ssh方式时,首先你必须是该项目的管理者或拥有者,并且需要配置个人的ssh key。而对于使用https方式来讲,就没有这些要求。
  • push:在使用ssh方式时,是不需要验证用户名和密码,如果你在配置ssh key时设置了密码,则需要验证密码。而对于使用https方式来讲,每次push都需要验证用户名和密码。

三、配置ssh key

1. 单个ssh key生成及配置

1.1 生成密钥

ssh-keygen程序在Linux/Mac系统上由SSH包提供,而在Windows上则包含在MSysGit包里

$ ssh-keygen -t rsa -C "[email protected]"

直接Enter,会提示你输入密码,如下(可不输,建议输入,安全性更高):

Enter same passphrase again: [Type passphrase again]

『本地的密钥对』生成完成提示:

Your public key has been saved in /home/you/.ssh/id_rsa.pub.
The key fingerprint is: # 01:0f:f4:3b:ca:85:d6:17:a1:7d:f0:68:9d:f0:a2:db [email protected]

得到两个文件:id_rsaid_rsa.pub。不是第一次,则选择overwrite

1.2 检查是否存在ssh key

$ cd ~/.ssh
$ cd ~/.ssh && ls // 进入且查看
  • id_rsa:密钥
  • id_rsa.pub:有.pub后缀的文件就是公钥,另一个文件则是。

1.3 添加公钥到远程仓库(github、gitLab 等)

$ cat ~/.ssh/id_rsa.pub

ssh-rsa
AAAAB3NzaC1yc2EAAAAAQC0X6L1zLL4VHuvGb8aJH3ippTozmReSUzgntvk434aJ
/v7kOdJ/MTyBlWXFCR+HAo3FXRitBqxiX1nKhXpHAZsMciLq8vR3c8E7CjZN733f5AL8uEYJA+YZevY5U
CvEg+umT7PHghKYaJwaCxV7sjYP7Z6V79OMCEAGDNXC26IBMdMgOluQjp6o6j2KAdtRBdCDS/QIU5THQD
xJ9lBXjk1fiq9tITo/aXBvjZeD+gH/Apkh/0GbO8VQLiYYmNfqqAHHeXdltORn8N7C9lOa/UW3KM7QdXo
6J0GFlBVQeTE/IGqhMS5PMln3 [email protected]

添加公钥到远程仓库
gitHub为例,登录进入个人中心,打开Settings -> SSH Keys,复制公钥内容到『key文本域』内

如果公钥复制正确, 『title域』会自动将you email代入, 便于标识,你可以修改为其他的名字

ssh命令分别测试

ssh -T [email protected]

2. 多个SSH-Key配置

当有多个『git账号』时,比如:一个gitLab,用于公司内的工作开发。一个github,用于个人的一些开发方向。

2.1 生成ssh key

// 生成一个gitlab用的SSH-Key
$ ssh-keygen -t rsa -C '[email protected]' -f ~/.ssh/id_rsa_gitlab

// 生成一个github用的SSH-Key
$ ssh-keygen -t rsa -C '[email protected]' -f ~/.ssh/id_rsa_github

2.2 生成config配置文件

~/.ssh目录下新建一个config文件

$ cd ~/.ssh
// 为.ssh目录设置权限
.ssh $ chmod 600 ~/.ssh/config

config文件,添加如下内容:

  • HostHostName填写git服务器的域名
  • IdentityFile指定私钥的路径
# gitLab
Host gitLab.com
HostName gitLab.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_gitlab

# github
Host github.com
HostName github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa_github

2.3 用ssh命令分别测试

$ ssh -T [email protected]
$ ssh -T [email protected]

gitHub为例,成功返回如下内容:

$ ssh -T [email protected]
Hi lianpf! You've successfully authenticated, but GitHub does not provide shell access.

四、HTTPS 通信协议

待更新…g


最后, 希望大家早日实现:成为前端高手的伟大梦想!
欢迎交流~

微信公众号

Recommend

  • 9

    git—全局设置用户名、密码、邮箱 | Lenix Blog# git config命令的–global参数,用了这个参数,表示你这台机器上所有的Git仓库都会使用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址。 # 1.查看git配置信息 $ git config --list

  • 11

    总所周知,RouterOS(ros)配置较为繁琐,但稳定性奇高,当ROS配置出现问题手里又没备份的时候,就又重新配置一遍ROS,耗时耗力不说,关键是糟心,本文内容讲解如何通过ROS脚本实现定时备份ROS配置并发送至指定邮箱,从此一劳永逸! 一、效果预览

  • 5

    Git是当今大多数软件团队都在使用的分布式版本控制系统。 在系统上安装Git之后,您应该做的第一件事就是配置您的git用户名和电子邮件地址。 Git将您的身份与您所做的每次提交相关联。Git允许您设置全局和每个项目的用户名和电子邮件地址。 您可以使用

  • 4
    • i.lckiss.com 3 years ago
    • Cache

    Git 多用户名和邮箱配置

    Git 多用户名和邮箱配置 2021-08-09 对于大多数人来说,都有两个或者多个Git账户,对于多 ssh 的配置这里不进行赘述,毕竟共用一个 ssh 也是可以的,密匙仅仅只是为了验证用户权限罢了,对于多个不同的项目,需要使用不同的用户进行提交...

  • 2

    提起邮箱,不知各位会想到什么?是收验证码用的鸡肋还是用起来极其繁琐的操作? 无论如何,这些都很正常,看到这篇文章的人大多跳过了 Email时代,直接进入了 IM 时代,第一个接触到的网络通讯方式或许就已是 OICQ,对于邮箱的使用技巧在简中互联网更是...

  • 4
    • blog.frytea.com 3 years ago
    • Cache

    Git 修改提交过的邮箱和用户名

    本文首发于: https://blog.frytea.com/archives/604/ 内网提交需要校验企业邮箱,但有时邮箱设置错误导致 commit 的邮箱有问题,此时可以通过修改已提交记录...

  • 8

    win10 通过 IIS 服务器 开启 FTP Server 并配置用户名和密码访问 2021-06-22 技术

  • 7

    专家:如何保护您的个人信息和Apple邮箱帐户-51CTO.COM 专家:如何保护您的个人信息和Apple邮箱帐户 作者:Amber Neely 2022-06-19 14:40:05 现在,来了解一些可以帮助自己保持在线状...

  • 3
    • www.fly63.com 2 years ago
    • Cache

    在 Git 中如何配置用户信息

    大家好,我是前端西瓜哥。最近买了台新的笔记本,重新装了一些软件,这次就说说怎么在 git 中配置用户信息吧。当我们安装了 git 后,一件非常重要的事情就是配置我们的用户名和邮箱地址,因为我...

  • 5

    域名邮箱操作指南 - zoho 域名邮箱配置方法 这篇文章来写如何配置 zoho 国际版的域名邮箱。 zoho 域名邮箱配置方法

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK