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

推荐订阅源

W
WeLiveSecurity
Jina AI
Jina AI
博客园 - 司徒正美
雷峰网
雷峰网
宝玉的分享
宝玉的分享
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
博客园_首页
WordPress大学
WordPress大学
Google DeepMind News
Google DeepMind News
GbyAI
GbyAI
MyScale Blog
MyScale Blog
Apple Machine Learning Research
Apple Machine Learning Research
美团技术团队
I
InfoQ
博客园 - Franky
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
博客园 - 叶小钗
阮一峰的网络日志
阮一峰的网络日志
Cyberwarzone
Cyberwarzone
C
CXSECURITY Database RSS Feed - CXSecurity.com
S
Schneier on Security
P
Privacy & Cybersecurity Law Blog
T
Threatpost
Cloudbric
Cloudbric
D
Docker
M
MIT News - Artificial intelligence
Recent Commits to openclaw:main
Recent Commits to openclaw:main
Vercel News
Vercel News
Martin Fowler
Martin Fowler
J
Java Code Geeks
AWS News Blog
AWS News Blog
The Cloudflare Blog
酷 壳 – CoolShell
酷 壳 – CoolShell
L
Lohrmann on Cybersecurity
Hacker News: Ask HN
Hacker News: Ask HN
Last Week in AI
Last Week in AI
S
Security @ Cisco Blogs
Help Net Security
Help Net Security
C
Cisco Blogs
V
V2EX
博客园 - 【当耐特】
I
Intezer
爱范儿
爱范儿
F
Fortinet All Blogs
cs.AI updates on arXiv.org
cs.AI updates on arXiv.org
P
Privacy International News Feed
IT之家
IT之家
L
LINUX DO - 最新话题
B
Blog RSS Feed
K
KPMG report finds enterprise disconnect between AI and its ROI | CIO

远飞闲记

用 OpenClaw 搭建全自动晨间简报系统 Open Claw(🦞龙虾): 新手最常踩的 8 个坑,我帮你踩过了 什么是AI Agent(智能体)? OpenClaw 在微信端使用指南 如何让OpenClaw🦞更好用-调教篇 OpenClaw(龙虾🦞)自主赚钱实验笔记 本地Qwen+云模型:OpenClaw真实体验 AI博客主题开发记 OpenClaw初试记 十年博客路:在AI水文泛滥的时代,为何还在坚守? AI Coding实战吐槽:别被"400刀大神"带偏,这些坑我帮你踩过了! 《相信》把不可能变为可能 我们写的程序被杀毒软件杀了,杀毒软件到底杀了什么? 👋2024 探索Unity单元测试:构建可靠游戏代码的基石 实用小黄鸭调试法 炸裂的Unity割韭菜这事 还是要有信念 您好2023 Docker启动提示虚拟化失败 Golang中配置文件热重载方案 重置博客主题 双链知识管理及logseq使用体验 魔幻的魔都疫情 漫谈国内NFT市场状况 如何在UE4中平衡蓝图与C++的使用 2021时光荏苒,2022可遇可期 UE4(Unreal Engine)本地化资源功能 摈弃:“拥有更多=做的更好的”的观念 鱿鱼游戏 研究UE4(虚幻引擎)后的感想 初试Caddy WebServer GitHub Copilot AI编程的感受 Mac Mini M1真香定律 地震提醒App 共和国失去两大功勋 币圈还好吗? Headless CMS 倒牛奶事件 “鸡娃”现象的观点 2020年新冠期间记录 社区团购团长的入门到放弃 路由折腾记 多电脑鼠键共享方案 Typescript循环引用 Circular Referenec 问题解决方法 《高效清单工作法:聪明人的无压时间管理手册》 Crossword Puzzles Privacy ShareTheCookies Privacy 七月的最后一天 游戏开发中使用的概率算法 笔直站立昂首挺胸的生活态度 Android和H5网游加速器解决方案的探索 Golang基础配置和Go Emacs开发环境的配置 使用Github Actions自动发布Hugo Blog配置 《青年到此为止》读书随笔 逛T推遇见比较有意思的事 《极简主义:活出生命的真意》阅读记录 疫情记录:热干面出院了 如何有效的阅读一本书:葱鲔火锅式笔记读书法 《麦肯锡精英高效阅读法》读书笔记 2020四年之约 疫情记闻 2020-二月二龙抬头 任天堂(Nintendo)switch NS游戏机 真香 MacBook Pro SSD 512G硬盘升级记 构建Facebook Instant Game本地测试环境 今日有感 Bye 2019,Hi 2020 猎魔人-The Witcher 如何判断是否适合加入创业团队 开发人员业余项目版权的见解 容易改变想法的人 及时止损 VSCode中远程调试NodeJS配置 Android Google Play 内购服务器订单校验 做产品是否要蹭热度 为什么会接入Google Adsense 成功和产品体验的一点想法 共享经济下的牺牲品们 折腰的梯子们 Emacs配置:Unity项目开发配置 人人都想当管理者 对焦虑和迷茫的理解 TypeScript强类型判断引发的问题 找回习惯和中产与爱好 程序员的成长之路 产品、技术、团队 爱心被滥用 工作996.生病ICU 2019初一记事 忆上海,换一种生活方式 记一次地震时的感受 押金是什么 Egret Jenkins搭建构建环境中遇见的坑 去年的总结 要懂的感恩 阿里云OSS+docker Owncloud安装 从修建房子来说开发过程的问题和流程 小记录 与人方便,与己方便 8月份的尾巴
GnuGPG Git中的使用及配置
2020-04-25 · via 远飞闲记

为什么需要使用GnuGPG来签名Git commit?,请查看:Git 工具 - 签署工作

安装GPG

  • macOS brew 使用以下命令 :

使用GPG

  • 使用以下生成密钥命令:1

    1
    2
    3
    
    gpg --full-generate-key #git version 2.17.*以上使用这条命令
    # git version 2.1.17 last use under command
    gpg --default-new-key-algo rsa4096 --gen-key

    根据提示一步一步的设置好信息,然后执行:

    1
    2
    3
    4
    
    #查看密钥信息ID
    gpg --list-secret-keys --keyid-format LONG
    #导出签名copy到Github个人设置界面->SSH and GPG keys中
    gpg --armor --export <GPG PUB UID>
  • 上传密钥到公钥服务器2

    1
    
    gpg --send-keys [用户ID] --keyserver hkp://subkeys.pgp.net
  • 导出公钥和私钥

    1
    2
    
    gpg --output mygpgkey_pub.gpg --armor --export <gpg pub id>
    gpg --output mygpgkey_sec.gpg --armor --export-secret-key <gpg pub id>
  • 导入密钥(公钥和私钥)

    1
    2
    3
    
    gpg --import [密钥文件]
    gpg --import ~/mygpgkey_pub.gpg
    gpg --allow-secret-key-import --import ~/mygpgkey_sec.gpg
  • 删除密码:

    1
    2
    3
    4
    5
    
    gpg --edit-key 375A500B
    # 在弹出的界面中输入原来密码,新密码留空即可
    passwd
    # 保存修改
    save

配置Git项目

  • 设置使用的GPG签名3

    1
    
    git config --global user.signingkey <GPG PUB UID>
  • 打开项目提交GPG签名

    1
    
    git config --global commit.gpgsign true #所有项目打开,只针对当前项目打开则删除其中的--global
  • 使用签名提交:4

    1
    2
    3
    
    git commit -S -m commit message
    #Tag签名
    git tag -s
  • 对tag进行签名:5

Note

Git commit的时,出现以下错误:

1
2
gpg failed to sign the data
fatal: failed to write commit object
  • 确认是否导入: export GPG_TTY=$(tty)~/.zshrc~/.bash 文件中;
  • 使用: git config –list 查看 user.signingkey and commit.gpgsign 是否重复设置或设置错误,如果重复设置使用: git config –unset 删除对应的参数
  • 如果提示 Sorry, no terminal at all requested - can't get input 的话,需要 把 ~/.gnupg/gpg.conf 中的 no-tty 注释掉