惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Security Archives - TechRepublic
Security Archives - TechRepublic
D
Docker
D
DataBreaches.Net
V
Vulnerabilities – Threatpost
P
Palo Alto Networks Blog
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
IT之家
IT之家
L
LINUX DO - 热门话题
T
The Blog of Author Tim Ferriss
雷峰网
雷峰网
Project Zero
Project Zero
T
Threatpost
D
Darknet – Hacking Tools, Hacker News & Cyber Security
宝玉的分享
宝玉的分享
Stack Overflow Blog
Stack Overflow Blog
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
C
CXSECURITY Database RSS Feed - CXSecurity.com
S
Securelist
Cisco Talos Blog
Cisco Talos Blog
Google DeepMind News
Google DeepMind News
Scott Helme
Scott Helme
The Cloudflare Blog
Know Your Adversary
Know Your Adversary
T
Tor Project blog
博客园_首页
人人都是产品经理
人人都是产品经理
博客园 - 叶小钗
Security Latest
Security Latest
Cyberwarzone
Cyberwarzone
S
Schneier on Security
T
The Exploit Database - CXSecurity.com
H
Help Net Security
Simon Willison's Weblog
Simon Willison's Weblog
阮一峰的网络日志
阮一峰的网络日志
C
Cyber Attacks, Cyber Crime and Cyber Security
P
Proofpoint News Feed
AWS News Blog
AWS News Blog
The GitHub Blog
The GitHub Blog
P
Proofpoint News Feed
T
Troy Hunt's Blog
量子位
G
GRAHAM CLULEY
O
OpenAI News
Engineering at Meta
Engineering at Meta
博客园 - Franky
SecWiki News
SecWiki News
F
Fortinet All Blogs
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com

Oragekk's Blog

OpenSpec 技术分享:用规格驱动 AI 编程 ChatGPT&Codex订阅教程 一个 waline 评论系统bug引发的思考 Jenkins 远程触发构建踩坑记 初识Rust vuepress-plugin-meting2 谷歌发布多平台应用开发神器Project IDX!PaLM 2加持 Vue常见优化手段 Vue2响应式原理解析 Dart 中的并发 Flutter 工作原理 如何利用GitHub Action提交URL到搜索引擎 提交URL到搜索引擎(百度、Bing、Google) GitHub Actions 使用介绍 素材设计 前端-Q&A 浏览器的事件循环 你不知道的 CSS 之包含块 CSS 属性计算过程 Vercel deploy忽略指定分支 评论插件 Waline 之邮件通知配置 公开API 终端究极美化iTerm2+Pure 使用Bing API提交网站URL Flutter 基础大集合 关于本站 关于本站 关于我 Markdown 展示 使用n命令管理node版本 幻灯片页 ReactNative State(状态) ReactNative开发环境配置,ES6语法介绍 ReactNative介绍 更优雅强大的终端ZSH 神经网络模型训练 YYCache优秀的缓存设计 WebViewJavascriptBridge NSError WCDB漫谈 优雅的实现TableViewCell单选 初探机器学习框架CoreML 深入理解swift中闭包的捕捉语义 ijkPlayer 集成 iOS 配置https iOS timelineLogistics iOS Cookie的配置及使用 WKWebView拦截URL WKWebView使用及自适应高度 textfield限制输入字符 评论系统从多说迁移到disqus指南 利用Runtime进行快速归档 iOS 10.3 keychain 重大更新 Cell的accessoryType属性标记单元格之后,出现的重用问题 通过UserAgent判断设备 AFNetworking A memory leak 一人一句宋词 OC 中的枚举类型 iOS - Image compression algorithm iOS程序启动原理(下) iOS程序启动原理(上) NSOperatioin TableView性能优化 Runloop Test Three ways to call Update Cocoapods 1.1.1 减小iOS-App或者静态库体积 Jekyll旧站回忆 JavaScript ES6 CommonJS,RequireJS,SeaJS 归纳笔记 Unix/Linux 扫盲笔记
Git SSH 密钥配置
Oragekk · 2024-01-11 · via Oragekk's Blog

在 GitLab 中配置 SSH 密钥

生成 SSH 密钥对

如果您还没有 SSH 密钥对,请首先生成一对密钥。在终端中执行以下命令:

ssh-keygen -t rsa -C "your.email@example.com" -b 4096

这将生成一个 RSA 类型的密钥对,并将私钥保存在 ~/.ssh/id_rsa,公钥保存在 ~/.ssh/id_rsa.pub

复制公钥内容

打开公钥文件 ~/.ssh/id_rsa.pub,将其中的内容复制到剪贴板。您可以使用以下命令来完成:

macOS:

pbcopy < ~/.ssh/id_rsa.pub

GNU/Linux (requires the xclip package):

xclip -sel clip < ~/.ssh/id_rsa.pub

Windows Command Line:

type %userprofile%\.ssh\id_rsa.pub | clip

Git Bash on Windows / Windows PowerShell:

cat ~/.ssh/id_rsa.pub | clip

将您的SSH密钥添加到GitLab。

  1. 登录到 GitLab

  2. 打开您的 GitLab 帐户,在右上角点击个人头像,选择设置

  3. 在左侧导航到 SSH 密钥设置

  4. 在 "SSH Keys" 页面,粘贴之前复制的公钥内容到 "Key" 字段中,并为该密钥添加一个可识别的标题(如 "My SSH Key")。然后点击 "Add Key" 按钮。

验证 SSH 密钥

GitLab 将验证并添加您提供的 SSH 密钥。如果一切顺利,您将在页面上看到成功的消息。

测试 SSH 连接

为了确保 SSH 密钥配置正确,您可以在终端中执行以下命令进行测试:

如果配置正确,您将看到与 GitLab 相关的欢迎消息。
现在,您已经成功在 GitLab 中配置了 SSH 密钥。这将允许您通过 SSH 协议进行与 GitLab 之间的安全通信,例如进行代码的克隆、推送和拉取操作。

重要

我们建议您使用ssh密钥而非用户名密码登录

因为有些情况比如更换git客户端、或者某些自动化脚本,是无法使用用户名密码登录的

对于macOS用户,我强烈建议您添加以下命令到zsh的配置文件 ~/.zprofile

ssh-add --apple-use-keychain ~/.ssh/id_rsa &> /dev/null

该命令的作用是将指定的 SSH 私钥文件 id_rsa 添加到 Apple Keychain 中,并将输出静默地丢弃,以确保在终端上不会显示任何输出信息。这通常用于在登录时自动加载 SSH 密钥,并将其保存在钥匙串中,以便在需要时无需再次手动输入密码或密钥口令。