Git - 配置公钥私钥
二月 27, 2024
3461
before
默认的,本地每次推送代码到远程仓库,都要输入用户名和密码,想要一劳永逸的解决这个问题,可以有以下几种方式:
- 方案1. 在remote add时,在远程仓库的url中手动添加用户名和密码。不推荐这种方式,因为在本地暴露了你的用户名和密码信息。
- 方案2. 基于凭证助手的方式,也就是输入一次用户名密码,就会保存到本地,后续就无需再次输入密码。觉得第三种麻烦,可以用这种。
- 方案3. 以公钥私钥的形式来完成。配置起来相对麻烦一些,但也没那么难。
接下来演示下三种方案。
额外的,我由于在本地反复的演示三种配置,所以,我这里再补充个清除本地认证的命令:
1 | # git 清理本地账户信息,下面三条命令分别执行,如果有哪条报错了,也不用管它 |
如果需要自取。
注意,后续的所有命令,都是基于Windows + git bash终端(注意,不是系统的cmd终端) + 码云仓库的环境下执行的。
方案一,明文添加用户名和密码(不推荐)
windows + 码云
这种方式上面也说了,不推荐因为在本地暴露了你的用户名和密码信息,虽然它暴露在了你自己的本地电脑上了。
来看怎么配置:
1 | # 如果你之前已经添加了远程仓库地址,那么你应该首先把之前的仓库地址干掉 |
完事你后续的push操作就不需要再认证了。
方案2:基于凭证助手的方式
windows + 码云
这种方式比较简单,首先在你的git bash中执行:
1 | # 如果你之前已经添加了远程仓库地址,那么你下一步操作就不用动了,没有添加过的话,就执行下,注意是HTTPS的仓库地址 |
基本上这个命令适合第一次push代码前执行一次,然后整个项目只需要输入一次用户名密码就行了,这样本地也就保存了。
方案三,基于公钥私钥的形式
windows + 码云
我这里还是以本地git结合码云来演示。
这种配置方式的原理就是:
- 在你的本地电脑上通过工具和命令来生成公钥和私钥文件。
- Windows下,这个工具由git bash终端内置了,注意是git bash终端,不是Windows系统的cmd终端。
- Mac系统终端中已经内置好了。
- 私钥保存在本地电脑不动它,然后将公钥文件中的公钥拷贝到远程仓库的相关配置中(gitee/github/gitlab,不同的软件配置位置不太一样,但原理是一样的)。然后将公钥拷贝到代码仓库平台。
- 后续push代码都是以ssl进行连接的,所以,配置时,你从代码仓库平台拷贝链接时,注意拷贝SSL类型的,而不是HTTPS类型的,这点尤为重要,别拷贝错了。
首先,要在本地生成公钥私钥,并且拿到公钥,私钥生成在哪就让它在哪呆着,我们不管。
windows
1 | # 注意,Windows中必须打开 git bash 终端才行,直接打开Windows的cmd或者powershell不行的,这点我遇到好多学生犯错了 |
Mac系统
1 | # Mac在终端中直接执行命令,然后一路回车即可 # 生成秘钥 ssh-keyen -t rsa # 查看公钥 ~代表的是你的用户路径 |
在本地拿到了公钥,接下来就需要将公钥拷贝到远程仓库的相关配置中了,我这里截图以码云为例。
再然后,就是将remote add一个ssh的连接了。
拷贝ssh链接。
然后git bash中执行:
1 | # 如果你之前已经添加了远程仓库地址,那么你应该首先把之前的仓库地址干掉 |
完事你提交代码就不需要输入用户名和密码了。
- 本文作者:Skyboy
- 本文链接:http://example.com/2024/02/27/Git%20-%20%E9%85%8D%E7%BD%AE%E5%85%AC%E9%92%A5%E7%A7%81%E9%92%A5/index.html
- 版权声明:本博客所有文章均采用 BY-NC-SA 许可协议,转载请注明出处!
查看评论