1,描述

一般情况下使用HTTPS以及SSH方式都可以从远程分支clone克隆代码到本地环境。
但是HTTPS的方式因为不存在密钥因此就会存在每次提交或者是push代码时就会存在输入密码的问题。这对于开发过称比较繁琐,因此就诞生了SSH方式clone以及commit和push代码的方式。

2,SSH密钥的生成过程

在终端环境下执行ls ~/.ssh就可以查看当前文件目录下是否存在SSH密钥生成的id_rsa以及id_rsa.pub两个文件。假如两个文件存在那么就可以确定本地用户已经生成了SSH密钥。如果不存在这两个文件那么就要执行以下命令来生成gitlab账号(邮箱号码)的SSH密钥。

指令:ssh-keygen -t rsa -C "3083764030@qq.com"。

输入完指令之后,第一次生成的话,直接一路回车,不需要输入密码。不是第一次生成的话,会提示 overwrite (y/n)? 问你是否覆盖旧之前生成的 SSH Key ,直接填 y ,然后一直回车就行了,出现如下图就代表 SSH Key 已经生成。

生成之后那么在.ssh文件夹之下就会存在id_rsa以及id_rsa.pub
其中在id_rsa这个文件之下存在就是SSH key的私钥。而在id_rsa.pub
这个文件之下存在的就是公钥。公钥就可以往远程仓库提交而私钥只能往ssh-agent添加。
(3)私钥往ssh-agent添加流程

1,输入以下,命令就可以打开ssh-agent
eval "$(ssh-agent -s)"。 然后输入以下命令ssh-add ~/.ssh/id_rsa添加进入。

(4)将公钥添加到远程仓库
一般情况下就是使用文本编辑器对id_rsa.pub文件的内容进行复制然后粘贴到gitlab的个人设置之中添加公钥就可以了。

注意: ~/.ssh这个文件夹是默认隐藏的,如果找不到的话可以使用以下命令,直接复制 id_rsa.pub 中的内容。

/* macOS 系统 */
pbcopy < ~/.ssh/id_rsa.pub/* windows 系统 */
clip < ~/.ssh/id_rsa.pub/* Linux 系统 */
sudo apt-get install xclip
xclip -sel clip < ~/.ssh/id_rsa.pub

这样子就可以解决问题了,一般情况下一台主机只能生成一个SSH key密钥,但是我们可以在不同的仓库使用同一个SSH操作(就是我们可以在不同的远程Git仓库都添加同一个SSH),不存在任何的问题。

解决SourceTree每一次向origin远程分支push代码时都需要输入密码的问题相关推荐

  1. IntelliJ IDEA切换Git远程分支 提交代码 拉取最新代码

    前言:众所周知Git用命令提交代码比较繁琐,而且还得记住命令,那如何让我们更加方便的提交代码呢 以及获取最新内容拉到本地 还有更换你要提交到的分支呢 下面废话不多说. 目录 IDEA里切换Git分支 ...

  2. #git操作#拉取远程分支到本地,克隆远程分支的代码(指定分支)

    git clone -b <指定分支名> <远程仓库地址>

  3. ajax提示弹出dev,windows git pull或者push代码时弹出安全框解决办法

    fMRI: spatial smoothing Source: Brain voyager support Theoretical Background Spatial smoothing means ...

  4. git 新建分支 推送到远程 首次pull代码报错 git branch --set-upstream-to=origin/<branch>

    git pull 提示 git branch --set-upstream-to=origin/ xxx 在本地创建新分支后,上传到远程仓库,首次pull 的时候,会提示: 当前分支与远程分支并未建立 ...

  5. Git之深入解析Git的杀手级特性·分支管理与分支变基的开发工作流以及远程分支的跟踪

    一.Git 分支简介 几乎所有的版本控制系统都以某种形式支持分支,使用分支意味着可以把工作从开发主线上分离开来,以免影响开发主线.在很多版本控制系统中,这是一个略微低效的过程,常常需要完全创建一个源代 ...

  6. 小乌龟git如何同步远程分支_git同步远程仓库分支

    git命令 1.何谓同步远程分支?有下面几种情况, 1.本地有新分支,远程仓库没有. 2.远程仓库有新分支,本地没有. 3.本地删除了分支,远程也想删除. 4.远程删除了分支,本地也想删除. 第一种情 ...

  7. git拉取远程分支并创建本地分支

    一.查看远程分支 使用如下git命令查看所有远程分支: git branch -r 1 二.拉取远程分支并创建本地分支 方法一 使用如下命令: git checkout -b 本地分支名x origi ...

  8. git提交项目到已存在的远程分支

    今天想提交项目到github的远程分支上,那个远程分支是之前就创建好的,而我的本地关联分支还没创建. 之前从未用github提交到远程分支过,弄了半个钟,看了几篇博文,终于折腾出来.现在把步骤整理下: ...

  9. Git本地分支和远程分支关联

    功能 命令 备注 创建分支(需要先进入仓库目录) git branch develop   查看本地分支 git branch 注:名称前面加* 号的是当前的分支 查看远程分支 git branch ...

最新文章

  1. POJ 1704 Georgia and Bob (Nim游戏变形)
  2. I2C 简介(备忘)
  3. Kubernetes基础学习(一)
  4. Go unsafe Pointer
  5. Kuboard云原生管理工具
  6. Python之数据分析(算数平均值、加权平均值、最大值与最小值)
  7. ASP.NET MVC 利用Razor引擎生成静态页
  8. word2vec----CBOW
  9. [转]VC编辑中的一些方法
  10. ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or
  11. NGN学习笔记5——IMS技术
  12. 产品必备技能(五):如何使用商业画布分析一款产品?附实操报告
  13. 马踏棋盘(骑士周游问题)
  14. Visual Studio(VS) 2019版本下载官方地址
  15. 乔治城大学计算机科学专业,[转载]美国西北大学计算机科学研究生最新专业排名...
  16. idb 怎么回复mysql_mysql中的.idb文件 怎么正常显示
  17. 【注意力机制集锦2】BAMSGEDAN原文、结构、源码详解
  18. 一篇荡气回肠的统计思想漫谈——漫谈相关与回归
  19. php转义和反转,PHP转义,反转义
  20. 一个清华差生10年奋斗经历

热门文章

  1. Android中的羊角符,apk瘦身工具
  2. 小白兔与大灰狼戴帽子的故事
  3. EXCEL批量复制小技巧,赶紧存起来!
  4. XScreenSaver - X Window 屏保
  5. Java字符串比较的方法(3种)
  6. 莫氏硬度6级以上,手机玻璃其实很硬【转】
  7. Oracle 系统权限分类
  8. Linux旧貌换新颜
  9. 无法连接到 reCAPTCHA,请检查您的网络连接
  10. python实现数组键值排序