GitLab中配置SSH key

2023-05-16

一.概述

很多公司现在git作为代码版本控制工具,然后自己搭建私有的gitlab来管理代码,我们在clone代码的时候可以选择http协议,当然我们也可以使用ssh协议来拉取代码。

为什么GitLab需要SSH Key呢?因为Git Lab需要识别出你推送的提交确实是你推送的,而不是别人冒充的。而GitLab只要知道了你的公钥,就可以确认只有你自己才能推送。ssh形式要弄生成配置ssh密钥,有本地Windows电脑生成配置的,有在服务器Git命令生成配置的。

当然,GitLab允许你添加多个Key。假定你有若干个电脑,你一会儿在公司提交,一会儿在家里提交,只要每台电脑的key都添加到GitLab,就可以在每台电脑上往GitLab推送了。其他操作都和GitHub是一样的了。

二.解决方法

1.确认本地密钥

SSH 秘钥默认储存在账户的主目录下的 ~/.ssh 目录 (也就是本地电脑C盘你的账户下)

  如:C:\Users\BF100400\.ssh\

  查看是否包含id_rsa和id_rsa.pub(或者是id_dsa和id_dsa.pub之类成对的文件),有.pub 后缀的文件就是公钥,另一个文件则是密钥。

  如果有这两个文件,则跳过1.2;如果没有这两个文件,甚至.ssh目录也没有,则需要用ssh-keygen 来创建 

2.生成密钥信息

  • 在.ssh 目录下右键打开Git Bash(.ssh目录不存在,则在任一目录下操作,或者手动创建该目录)

ssh-keygen -t rsa -C "your_email@youremail.com"

直接Enter就行,然后会提示输入密码(可输可不输)

  • 执行完成之后,在.ssh 目录下就会生成秘钥文件(没有.ssh目录的会自动生成,手动创建的则不会重复生成)

在~/.ssh/下会生成两个文件,id_rsa和id_rsa.pub

  id_rsa是私钥

  id_rsa.pub是公钥

 

3.查看密钥

打开本地git bush,使用下列命令生成ssh公钥

进入.ssh目录

cd ~/.ssh

回车

ls

查看key值

cat id_rsa.pub

4.复制key值添加到GitLab

打开gitlab,找到Profile Settings-->SSH Keys--->Add SSH Key,并把上一步中复制的内容粘贴到Key所对应的文本框,在Title对应的文本框中给这个sshkey设置一个名字,点击Add key按钮

 

到此就完成了gitlab配置ssh key的所有步骤,我们就可以愉快的使用ssh协议进行代码的拉取以及提交等操作了

 

 

 

 

 

 

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GitLab中配置SSH key 的相关文章

  • ADO 实体框架创建不需要的实体键

    我需要使用无法更改的数据库中的表 使用链接服务器 因此 我的架构的一部分是这些表的视图 我无法在数据库中创建 FK 当我在 ADO NET 实体框架中创建关联时 我遇到了问题 因为外部数据库表上的第二列有一个索引 并且 EF 正在为其创建一
  • 无法访问 GitLab:SSL 证书已过期

    在 Visual Studio 中 我尝试从 GitLab 上的存储库中提取一些更改 但它给了我一个错误 Git 因致命错误而失败 无法访问https gitlab git SSL证书问题 证书已过期 如何生成新证书并将其添加到 VS 中
  • gitlab:带有大型存储库的 git clone https 失败

    当尝试通过 https 克隆大型存储库 700MB 时 git 失败并显示 c git projects gt git clone https git mycompany de fs git Cloning into fs Username
  • 使用 scp 从不同路径复制多个文件的智能方法[重复]

    这个问题在这里已经有答案了 我想知道一种简单的使用方法scp复制文件系统上不同路径中存在的文件和文件夹 SSH 目标服务器请求密码 但我无法将其放入配置文件中 我知道scp没有我可以从脚本提供的密码参数 所以现在我必须逐个复制每个文件或目录
  • 如何从远程 ssh 连接上运行的 tmux(复制模式)复制到本地剪贴板

    我通过 OS X 上的 VirtualBox 运行 Linux 我通过在无头状态下运行虚拟机 然后使用端口转发 sshing 到 Linux 机器来实现这一点 现在 无论复制到我的虚拟机上的剪贴板 我都可以粘贴到我的远程 ssh 会话上 但
  • 指纹已经被gitlab采集了

    我格式化了我的 Windows 7 笔记本电脑 并尝试让 git 设置再次工作 我安装了 git 和源代码树应用程序 我从 gitlab 删除了 SSH 密钥并使用重新生成了密钥ssh keygen 但是当我尝试在 gitlab 添加 SS
  • Python setuptools:如何在 setup.py 中添加私有存储库 (gitlab)?

    我上传了 2 个包 它们位于我的 gitlab 存储库中 如果我想使用 pip 将它们安装在我的系统中 这很容易 因为 gitlab 可以帮助您 https docs gitlab com ee user packages pypi rep
  • 通过 ssh 发送命令并读取输出结果

    我有代码通过 ssh 连接到远程服务器并向其发送 2 个或更多命令 例如 cd export home ops bin和 viewlinkload time 20131205 19 但我没有看到命令执行 也没有收到结果 我需要获取服务器返回
  • Android SSH 示例代码

    我想创建一个 android 活动 用于与远程设备 通过 Wifi 建立 SSH 会话并在远程设备上执行一些 Linux 命令 任何人都可以获得一个快速 简短的示例 用于使用以下命令进行连接 身份验证和发送远程命令Trilead https
  • 收到“/:未找到事件。”使用 PyCharm 远程调试器时

    当我使用 PyCharm 通过 ssh 进行远程调试时tcsh shell 服务器 很多时候它停止工作 并显示 未找到事件 更具体地说 我在 pycharm 调试控制台中遇到以下内容 ssh username hostserver 22 p
  • 将存储库从 Github 移至 Gitlab

    有没有办法将整个存储库从 Github 移动到 GitLab 对于代码本身来说 只需在 GitLab 上创建一个新的存储库并推送到它即可 Wiki 页面位于 Github 上的单独分支中 并通过 Git 机制进行管理 据我所知 GitLab
  • 通过 cron 进行 git 推送

    我正在尝试运行git push来自 cron 当我在 shell 上以交互方式执行命令时 一切顺利 从我的用户的 crontab 运行命令时 cron 会传递错误消息 Permission denied publickey 我认为这与查找或
  • SVN 不断提示我输入密码并拒绝缓存我的凭据

    环境 Eclipse Indigo Ubuntu 11 04 Subclipse 1 6 SVN 客户端 Subclipse RabbitVCS 我通过 svn ssh 连接 我的网址如下所示 svn ssh 我的名字 我的域名 路径 我可
  • RVM 无法通过 SSH 工作(作为一项功能)

    我刚刚在 Debian 6 服务器上安装了 RVM 一开始没有任何问题 但是 在一切设置完成后 我无法在终端中运行 RVM 我打字时收到的消息rvm use is RVM is not a function selecting rubies
  • 无法在 Windows 7 中为 heroku 生成 ssh 公钥

    当我努力的时候heroku login通过我机器上的cmd 它说 找不到现有的公钥您想生成一个吗 YN 之后 当我按 y 并输入时 它会说 生成新的 ssh 公钥无法生成密钥 ssh keygen 未被识别为内部或外部命令可操作程序或批处理
  • 如何更改Android软键盘中任意键的按键背景

    我想让键盘上的一些键与其他键不同 例如下图中的shift 删除 空格键 根据google的参考文档 我们可以通过使用 来改变按键的背景android keybackground drawable xxx in input xml 但它改变了
  • 无需代理转发的 SSH 跳转主机

    虽然是一个简单的问题 但我已经搜索了几天没有成功 M My machine J Jump Host S Server Jump Host has my public key on authorized keys Server has J s
  • 使用 os.forkpty() 创建一个伪终端以 ssh 到远程服务器并与其通信

    我正在尝试编写一个 python 脚本 它可以 ssh 到远程服务器 并可以从 python 客户端执行 ls cd 等简单命令 但是 在成功 ssh 到服务器后 我无法读取伪终端的输出 任何人都可以在这里帮助我 以便我可以在服务器上执行一
  • 在Python中使用None作为字典键是否合理?

    似乎没有一个可以用作字典键 但我想知道这是否会导致以后出现麻烦 例如 这有效 gt gt gt x a 1 b 2 None 3 gt gt gt x a 1 None 3 b 2 gt gt gt x None 3 我正在使用的实际数据是
  • Bash - 转义 SSH 命令

    我有一组脚本 用于通过 FTP 下载文件 然后从服务器中删除它们 其工作原理如下 for dir in ls volume1 auto downloads sync complete do if x dir x then echo DIR

随机推荐

  • 使用阿里云PCDN降低内容分发成本

    点击打开链接 阿里云PCDN xff08 P 2P CDN 的 简称 xff09 是基于P2P技术的内容分发 网络 产品 xff0c 相比CDN而言 xff0c PCDN单价较低 xff0c 更适 用 于大流量内容分发 PCDN产品是与传统
  • 机器学习--线性代数基础

    原文地址 数学是计算机技术的基础 xff0c 线性代数是机器学习和深度学习的基础 xff0c 了解数据知识最好的方法我觉得是理解概念 xff0c 数学不只是上学时用来考试的 xff0c 也是工作中必不可少的基础知识 xff0c 实际上有很多
  • Dockerfile小案例(systemctl)

    Dockerfile小案例 xff08 systemctl xff09 文章目录 Dockerfile小案例 xff08 systemctl xff09 Dockerfile制作 xff08 systemctl xff09 镜像 Docke
  • 怎么打造属于自己的天猫精灵

    原文地址 看了天猫精灵的介绍 xff0c 是不是觉得很神奇 xff0c 实际每个程序要都可以打造属于自己的智能家居 可以实现的功能 点歌 最基础的功能了 xff0c 可以将自己喜欢的歌曲下载下来 xff0c 随时点歌定时提醒 提醒自己吃饭
  • 聊一聊数据仓库中的元数据管理系统

    原文地址 一 元数据的定义 按照传统的定义 xff0c 元数据 xff08 Metadata xff09 是关于数据的数据 在数据仓库系统中 xff0c 元数据可以帮助数据仓库管理员和数据仓库的开发人员非常方便地找到他们所关心的数据 xff
  • 300万知乎多标签文本分类任务经验分享(附源码)

    点击有惊喜 七月 xff0c 酷暑难耐 xff0c 认识的几位同学参加知乎看山杯 xff0c 均取得不错的排名 当时天池AI医疗大赛初赛结束 xff0c 官方正在为复赛进行平台调试 xff0c 复赛时间一拖再拖 看着几位同学在比赛中排名都还
  • 二战时图灵机破译的Enigma密码,现在AI仅需13分钟便可破译

    点击有惊喜 第二次世界大战期间 xff0c 布莱切利园是英国破译密码的中心 图灵当时也在那里工作 密码破译者的天才工作挽救了许多平民和士兵的生命 xff0c 据说将战争缩短了两年 Enigma密码机非常复杂 xff0c 它最先进的化身可以配
  • MySQL · 数据恢复 · undrop-for-innodb

    点击有惊喜 简介 undrop for innodb 是针对 innodb 的一套数据恢复工具 xff0c 可以从文件级别恢复诸如 xff1a DROP TRUNCATE table 删除表中某些记录 xff0c innodb 文件被删除
  • 一文读懂「Attention is All You Need」| 附代码实现

    前言 2017 年中 xff0c 有两篇类似同时也是笔者非常欣赏的论文 xff0c 分别是 FaceBook 的Convolutional Sequence to Sequence Learning 和 Google 的Attention
  • PostgreSQL 对称加密、非对称加密用法介绍

    点击有惊喜 标签 PostgreSQL 对称加密 非对称加密 Symmetric ASymmetric public private pgcrypto 区块链 背景 对称加密方法 xff0c 指加密和解密使用同一把密钥的方法 优势是加密速度
  • Spring MVC原理

    摘要 xff1a 摘要 Spring MVC工作流程图 springMVC工作流程图 图一 图二 开发工具 1 Eclipse IDE xff1a 采用Maven项目管理 xff0c 模块化 2 代码生成 xff1a 通过界面方式简单配置
  • Web前端面试宝典(最新)

    第一部分 xff1a HTML问答题 1 简述一下你对HTML语义化的理解 xff1f 用正确的标签做正确的事情 html语义化让页面的内容结构化 xff0c 结构更清晰 xff0c 便于对浏览器 搜索引擎解析 即使在没有样式CSS情况下也
  • 作为前端Web开发者,这12条基本命令不可不会

    对于开发人员来说 xff0c 终端是最重要的工具之一 掌握终端 xff0c 能够有效的提升开发人员的工作流程 使用终端 xff0c 许多日常任务都被简化为了编写简单的命令并按下 Enter 按钮 本文列举了一系列 Linux 命令 xff0
  • linux环境下使用route指令设置多个网络连接的优先级(通过修改路由表的默认网关条目)

    1 背景 在生活中的会经常遇见一台PC同时连接多个网络的场景 最典型的 一台笔记本可以同时连接一个无线网 手机热点 和一个有线网 以太网 linux和window操作系统在默认情况都会使用最早连接的网络进行互联网访问 如果我们想切换到另一个
  • 腾讯云账号怎么注销?教程来了

    腾讯云账号可以注销流程 xff0c 个人用户和企业用户均可以申请注销腾讯云账号 xff0c 腾讯云百科来详细说下腾讯云账户注销所需材料及注销流程 xff1a 腾讯云账号注销方法 根据实名认证类型 xff0c 腾讯云账号分为个人实名认证 企业
  • 284页beego官方中文文档,Go语言进阶必备

    Go语言作为出身名门的后起之秀 xff0c 大家所熟知的Docker和Kubernets xff08 K8S xff09 就是使用Go语言开发的 xff0c 以其简单高效 高并发 跨平台的优势 xff0c 称霸于容器领域 根据 Stack
  • JAVA语言:打印出 所有”水仙花数“。

    span style font size 18px public class test2 public static void main String args int sum a b c int m 61 100 while m lt 1
  • Git系列(6-收尾) ----Centos7 安装 Gitlab

    1 环境设置 sudo yum install y curl policycoreutils python openssh server sudo systemctl enable sshd sudo systemctl start ssh
  • Redis配置文件详解

    Redis 配置文件 当配置中需要配置内存大小时 xff0c 可以使用 1k 5GB 4M 等类似的格式 xff0c 其转换方式如下 不区分大小写 1k 61 gt 1000 bytes 1kb 61 gt 1024 bytes 1m 61
  • GitLab中配置SSH key

    一 概述 很多公司现在git作为代码版本控制工具 xff0c 然后自己搭建私有的gitlab来管理代码 xff0c 我们在clone代码的时候可以选择http协议 xff0c 当然我们也可以使用ssh协议来拉取代码 为什么GitLab需要S