news 2026/2/23 11:15:39

wsl使用git

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
wsl使用git

前言:文章类型 > 笔记

安装git

sudo apt-get install git

查看版本(只用前面那句就行)

git --version; git credential-manager --version

用户配置

git config --global user.name "Your Name"
git config --global user.email "youremail@domain.com"

生成密钥

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

查看并复制公钥

cat ~/.ssh/id_rsa.pub

# 你会看到类似这样的内容:# ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABgQD...(很长一串)... youremail@domain.com

👌以下内容可忽略
👌SSH密钥指纹(Fingerprint)
👌以上内容为实践,以下内容由ai生成,可忽略。
👌介绍:

SSH密钥指纹(Fingerprint)

指纹是公钥的哈希值,主要用于验证公钥的真实性和唯一性,而不是用于身份认证。以下是指纹的主要用途:

验证公钥的真实性:当你第一次连接到远程服务器(如GitHub)时,SSH客户端会显示该服务器的公钥指纹,你可以通过对比已知的正确的指纹来确认你连接的是正确的服务器,而不是恶意的中间人。
唯一标识公钥:指纹是公钥的简短表示,方便人类比较和识别。公钥本身很长,而指纹较短,易于处理。

安全验证:在团队协作或自动化脚本中,可以通过比较指纹来确保使用的公钥是正确的。

在SSH连接过程中的作用:当你第一次通过SSH连接到新服务器时,会看到类似这样的提示:

text The authenticity of host ‘github.com (140.82.121.3)’ can’t be
established. ECDSA key fingerprint is
SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8. Are you sure you
want to continue connecting (yes/no)?
你可以通过对比GitHub官方公布的指纹(可以在GitHub的文档中找到)来确认你连接的是真正的GitHub服务器,而不是冒名顶替者。

在GitHub中,你也可以看到你添加的公钥的指纹,以便于管理。

所以,指纹是一个用来验证公钥的便捷工具,但并不是用于身份认证的凭证。身份认证时需要使用私钥,而远程服务器使用公钥来验证你的私钥。
SSH密钥指纹(Fingerprint)的主要用途是验证和识别密钥,而不是用于身份认证。以下是它的具体作用:

1.验证密钥真实性(防止中间人攻击)当你第一次连接新服务器时,SSH会显示服务器的公钥指纹: ```The authenticity of host ‘github.com (140.82.121.3)’ can’t be established.

ECDSA key fingerprint is
SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8. Are you sure you
want to continue connecting (yes/no)? ```你可以:

  • 对比GitHub官方公布的指纹(在GitHub文档中)
  • 确认你连接的是真正的GitHub,而不是假冒的服务器
2.快速识别和区分密钥
  • 指纹是公钥的哈希值,短小易读
  • 便于人工核对,避免比较长长的公钥字符串
3.在GitHub等平台上的用途
  • GitHub会显示你已添加密钥的指纹
  • 方便你确认添加了正确的密钥
  • 删除密钥时可以通过指纹识别
4.实际使用场景示例
检查本机已添加密钥的指纹bash ssh-keygen -lf ~/.ssh/id_rsa.pub输出: ```3072 SHA256:L8bheKiPGxAix5CX9OYQN/2qA33xv/GNugf4yw2JsXQ

youremail@domain.com (RSA) ```

查看GitHub服务器指纹bash ssh-keyscan github.com | ssh-keygen -lf -输出(应与官方公布的一致): ```256 SHA256:nThbg6kXUpJWGl7E1IGOCspRomTxdCARLviKw6E5SY8 (ECDSA) 256

SHA256:p2QAMXNIC1TJYWeIOttrVc98/R1BUFWu3/LiyKgUfQM (ED25519) 3072
SHA256:uNiVztksCsDhcc0u9e8BujQXVUpKZIDTMczCvj3tD2s (RSA) ```

验证连接到的服务器bash ssh -T git@github.com首次连接会显示指纹让你确认。
5.重要区别总结| 项目 | 公钥 (Public Key) | 指纹 (Fingerprint) | |------|-------------------|---------------------| |用途|

身份认证(添加到GitHub) | 验证和识别 | |格式| 长字符串(ssh-rsa AAAAB3N...) |
短哈希值(SHA256:xxxx) | |长度| 几百个字符 | 几十个字符 | |可逆性| 原始数据 |
哈希值,不可逆 | |使用场景| 添加到服务端进行认证 | 核对、验证、管理 |

简单类比:
  • 公钥≈ 你的身份证原件(需要提交给GitHub)
  • 指纹≈ 身份证号码(用于快速识别和核对)
  • 私钥≈ 你的签名/印章(用于证明你是你)

结论:指纹是个"校验工具",帮你确认"对的钥匙"放在了"对的锁"上,但它本身不是钥匙。你需要的是公钥本身去GitHub认证,而不是它的指纹。


提交代码 懒得写了复制粘贴的 自己变通吧,提交前先git add .

…or create a new repository on the command line
echo “# navdemo” >> README.md
git init
git add README.md
git commit -m “first commit”
git branch -M main
git remote add origin git@github.com:yumeko2333333/navdemo.git
git push -u origin main

…or push an existing repository from the command line
git remote add origin git@github.com:yumeko2333333/navdemo.git
git branch -M main
git push -u origin main

# 懒得编辑了自己看吧# 实践如此jh@DESKTOP-885GOSQ:/mnt/e/YumeWorkFiles/Aaaa-t/Abbb-t/A-TestingDemo$cdnavdemo jh@DESKTOP-885GOSQ:/mnt/e/YumeWorkFiles/Aaaa-t/Abbb-t/A-TestingDemo/navdemo$gitinit Reinitialized existing Git repositoryin/mnt/e/YumeWorkFiles/Aaaa-t/Abbb-t/A-TestingDemo/navdemo/.git/ jh@DESKTOP-885GOSQ:/mnt/e/YumeWorkFiles/Aaaa-t/Abbb-t/A-TestingDemo/navdemo$gitcommit -m"first commit"On branch main Initial commit Untracked files:(use"git add <file>..."to includeinwhat will be committed)index.html linksdata.json login.html notes.html notesdata.json ok/ others/ recipes.html recipes10.html recipes9.html recipesdata.json reminders.json version/ webhook.php nothing added to commit but untracked files present(use"git add"to track)jh@DESKTOP-885GOSQ:/mnt/e/YumeWorkFiles/Aaaa-t/Abbb-t/A-TestingDemo/navdemo$gitadd.jh@DESKTOP-885GOSQ:/mnt/e/YumeWorkFiles/Aaaa-t/Abbb-t/A-TestingDemo/navdemo$gitcommit -m"first commit"[main(root-commit)19cd883]first commit21files changed,22511insertions(+)create mode100644index.html create mode100644linksdata.json create mode100644login.html create mode100644notes.html create mode100644notesdata.json create mode100644ok/changeimgcolor.html create mode100644others/jsex1.html create mode100644others/mousehightlight.js create mode100644others/newreminders3.html create mode100644others/snake1.js create mode100644recipes.html create mode100644recipes10.html create mode100644recipes9.html create mode100644recipesdata.json create mode100644reminders.json create mode100644version/index1.html create mode100644version/index_testing4.html create mode100644version/notes1/notes.css create mode100644version/notes1/notes.js create mode100644version/notes1/notes1.html create mode100644webhook.php jh@DESKTOP-885GOSQ:/mnt/e/YumeWorkFiles/Aaaa-t/Abbb-t/A-TestingDemo/navdemo$gitpush -u origin main Enumerating objects:27, done. Counting objects:100%(27/27), done. Delta compression using up to8threads Compressing objects:100%(26/26), done. Writing objects:100%(27/27),120.81KiB|798.00KiB/s, done. Total27(delta6), reused0(delta0), pack-reused0remote: Resolving deltas:100%(6/6), done. To github.com:yumeko2333333/navdemo.git *[new branch]main ->main branch'main'setup to track'origin/main'.jh@DESKTOP-885GOSQ:/mnt/e/YumeWorkFiles/Aaaa-t/Abbb-t/A-TestingDemo/navdemo$
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/2/23 1:51:28

[特殊字符] 深入了解 Flutter:构建跨平台应用的利器

#> *作者&#xff1a;AI助手 | 发布日期&#xff1a;2025年4月*![Flutter Logo](https://upload.wikimedia.org/wikipedia/commons/thumb/1/1a/Flutter_logo.png/800px-Flutter_logo.png) *图1&#xff1a;Flutter 官方 Logo*## 一、什么是 Flutter&#xff1f;**Flutter*…

作者头像 李华
网站建设 2026/2/16 8:11:41

6个高效AI论文网站盘点,智能改写功能让重复率直降

开头总结工具对比&#xff08;技能4&#xff09; &#xfffd;&#xfffd; 为帮助学生们快速选出最适合的AI论文工具&#xff0c;我从处理速度、降重效果和核心优势三个维度&#xff0c;对比了6款热门网站&#xff0c;数据基于实际使用案例&#xff1a;工具名称处理速度降重幅…

作者头像 李华
网站建设 2026/2/21 15:48:56

西门子Smart200昆仑技创7寸触摸屏的全面实战项目:新手首选

西门子smart200 昆仑技创的7寸触摸屏&#xff0c;汇川伺服雷赛步进脉冲控制&#xff0c;两路模拟量测量输入&#xff0c;国产机器人modbus tcp 通讯 全面实战项目&#xff0c;最适合新手入门练手学习。 外触摸屏软件3.3.2.6187最近在搞自动化项目的老铁们注意了&#xff01;今天…

作者头像 李华
网站建设 2026/2/22 17:21:36

手把手教你学Simulink--协作机器人场景实例:基于Simulink的协作机器人冗余自由度优化仿真

目录 手把手教你学Simulink--协作机器人场景实例:基于Simulink的协作机器人冗余自由度优化仿真 一、引言:为什么做冗余自由度优化?——协作机器人的“灵活性与效率倍增器” 挑战: 二、核心原理:冗余自由度优化的“数学框架与算法” 1. 冗余自由度定义与逆运动学 2. 优…

作者头像 李华