git密钥生成与部署

前言

在github上配置ssh key很容易,网上一大堆教程,但基本没有详细解释其原理的,为什么要配?每使用一台主机都要配?配了为啥就不用密码了?下面将简单通俗地解释一下。

我们在往github上push项目的时候,如果走https的方式,每次都需要输入账号密码,非常麻烦。而采用ssh的方式,就不再需要输入,只需要在github自己账号下配置一个ssh key即可。

配置SSH

git使用ssh配置,基本需要两步

  1. 生成密钥

    ssh-keygen -t rsa -C “xxx@xxx.com

  2. id_rsa.pub部署在github上

验证:

ssh -T git@github.com

出现如下字样即代表部署成功

Hi xxxxxx/xxxxxx.github.io! You’ve successfully authenticated, but GitHub does not provide shell access.

git设置代理

git设置有两种

git config –list

git config –global –list

分辨需要设置的代理

一、HTTP形式

Http代理

git config –global http.proxy “http://127.0.0.1:8080

git config –global https.proxy “http://127.0.0.1:8080

走 socks5 代理(如 小飞机 or V2xxxx)

git config –global http.proxy “socks5://127.0.0.1:1080”

git config –global https.proxy “socks5://127.0.0.1:1080”

取消设置

git config –global –unset http.proxy

git config –global –unset https.proxy

二、SSH形式

修改~/.ssh/config文件(不存在则新建):

1
2
3
4
5
6
7
8
# 必须是 github.com
Host github.com
HostName github.com
User git
# 走 HTTP 代理
# ProxyCommand socat - PROXY:127.0.0.1:%h:%p,proxyport=8080
# 走 socks5 代理(如小飞机 or V2xxx)
# ProxyCommand nc -v -x 127.0.0.1:1080 %h %p

对于 Windows 用户,要使用 socks5 代理却没有 nc 的,可以将

1
2
3
ProxyCommand nc -v -x 127.0.0.1:1080 %h %p
换成
ProxyCommand connect -S 127.0.0.1:1080 %h %p

配合上面的修改,我这里分享一个我的自用 Linux 一键切换脚本,将下面代码写入 ~/.bash_profile(其他 bash 程序或电脑系统可能路径不太一样)

1
2
3
4
5
6
7
8
9
10
11
function github_on() {
cat "${HOME}/.ssh/config" >"${HOME}/.ssh/config_back" # 先备份
config=$(cat ${HOME}/.ssh/config_back | sed 's/\# ProxyCommand/ProxyCommand/g')
echo -e "${config}" >"${HOME}/.ssh/config" && echo -e "\033[36mGithub 已上代理!\033[0m"
}

function github_off() {
cat "${HOME}/.ssh/config" >"${HOME}/.ssh/config_back" # 先备份
config=$(cat ${HOME}/.ssh/config_back | sed 's/ ProxyCommand/ \# ProxyCommand/g')
echo -e "${config}" >"${HOME}/.ssh/config" && echo -e "\033[33mGithub 停止代理!\033[0m"
}

写完之后运行 source ~/.bash_profile使配置文件生效,使用下面的指令就可以很爽的用啦

1
2
3
4
5
github_on
# 启动

github_off
# 关闭

配置

可以在配置或代替配置文件中修改大部分的配置

网站

参数 描述
title 网站标题
subtitle 网站副标题
description 网站描述
keywords 网站的关键词且支持多个关键词
author 作者名字
language 网站使用的语言。不同主题可能需要设置成不同的值,需要参考主题的文档自行设置,常见的有zh-Hanszh-CN
timezone 网站时区。Hexo 默认使用您电脑的时区。请参考 时区列表 进行设置,如 America/New_York, Japan, 和 UTC 。一般的,对于中国大陆地区可以使用 Asia/Shanghai

网址

参数 描述 默认值
url 网站必须以http://https://开头
root 网站根目录 url's pathname
permalink 文章的永久链接格式 :year/:month/:day/:title/
permalink_defaults 永久链接中各部分的默认值

what

Jack's Learn Hexo

这是一个基于Hexo框架搭建的一个个人Blog,主要用于存放个人学习心得与感悟

Hexo 入门

Welcome to Hexo! This is your very first post. Check documentation for more info. If you get any problems when using Hexo, you can find the answer in troubleshooting or you can ask me on GitHub.

欢迎来到 Hexo!这是您的第一篇文章。更多信息请查看 文档。如果您在使用 Hexo 时遇到任何问题,可以在 troubleshooting 中找到答案,也可以在 GitHub 上询问我。

Quick Start

Create a new post

新建一个文章

1
$ hexo new "My New Post"

More info: Writing

Run server

运行服务器

1
$ hexo server

More info: Server

Generate static files

生成静态文件

1
$ hexo generate

More info: Generating

Deploy to remote sites

部署到远程站点

1
$ hexo deploy

More info: Deployment

以上操作一行指令解决解决

1
hexo clean && hexo g && hexo d

https://jack8487-github-io.pages.dev/

杂笔

Typora 字体颜色设置

1.font标签

1
<font color='red'>红色</font>

2.span标签

1
<span style='color:文字颜色;background:背景颜色;font-size:文字大小;font-family:字体;'>文字</span>

框框字

1
`框框`

zh-Hans

wo

居中

1
<center></center>

图片

1
<img src=""></img>

2024年第二十一届五一数学建模竞赛题目

煤矿深部开采冲击地压危险预测

煤炭是中国的主要能源和重要的工业原料。然而,随着开采深度的增加,地应力增大,井下煤岩动力灾害风险越来越大,严重影响着煤矿的安全高效开采。在各类深部煤岩动力灾害事故中,冲击地压已成为威胁中国煤矿安全生产最重要的灾害之一,冲击地压事故易造成严重的人员伤亡和财产损失。近年来,研究人员进行了大量深入的研究,采取了许多防控措施,中国煤矿安全形势持续稳步改善。但是,冲击地压事故仍时有发生,煤矿安全形势依然严峻,冲击地压的监测预警和有效防控仍是煤矿安全生产中亟待解决的科技问题。在深部煤矿开采过程中,可以监测声发射(AE)和电磁辐射(EMR)信号,电磁辐射和声发射传感器每30秒采集一个数据,可通过这些数据的变化趋势判断目前工作面或巷道是否存在冲击地压危险。电磁辐射和声发射数据随着采煤工作面的推进波动,一般在冲击地压发生前数天(如0-7天,即大约冲击地压发生前7天内)会有一些趋势性前兆特征,因此我们将电磁辐射和声发射数据分为5类,(A)正常工作数据;(B)前兆特征数据;(C)干扰信号数据;(D)传感器断线数据;(E)工作面休息数据,其中,A、B、C 类为工作面正常生产时的数据,D类为监测系统不正常时的数据,E类为停产期间的数据。附件1给出了2019年1月9日-2020年1月7日采集的电磁辐射和声发射数据,并且标记出了所对应的A、B、C类以及D或者E类(D/E)数据。请建立数学模型,完成以下问题:
  问题1:如图1,已知现场工作面的部分电磁辐射和声发射信号中存在大量干扰信号,有可能是工作面的其他作业或设备干扰等因素引起,这对后期的电磁辐射和声发射信号处理造成了一定的影响。应用附件1和2中的数据,完成以下问题。

  


图1 以电磁辐射为例的干扰信号数据示意图

​ (1.1) 建立数学模型,对存在干扰的电磁辐射和声发射信号进行分析,分别给出电磁辐射和声发射中的干扰信号数据的特征(不少于3个)。

​ (1.2) 利用问题(1.1)中得到的特征,建立数学模型,对2022年5月1日-2022年5月30日的电磁辐射和2022年4月1日-2022年5月30日及2022年10月10日-2022年11月10日声发射信号中的干扰信号所在的时间区间进行识别,分别给出电磁辐射和声发射最早发生的5个干扰信号所在的区间,完成表1和表2。

表1 电磁辐射干扰信号时间区间
序号 时间区间起点 时间区间终点
1
2
3
4
5
表2 声发射干扰信号时间区间
序号 时间区间起点 时间区间终点
1
2
3
4
5

  问题2:已知在发生冲击地压危险前约7天内,电磁辐射和声发射信号存在随时间循环增大的趋势(如图2所示),这类信号我们称为前兆特征信号。在出现前兆特征信号之后的约7天内,有可能发生冲击地压,所以一般情况下出现前兆特征信号之后,会采取一定措施尽可能的防止冲击地压发生。应用附件1和2中的数据,完成以下问题。

    


图2 以声发射为例的前兆特征信号示意图

​ (2.1) 建立数学模型,对电磁辐射和声发射信号中的前兆特征信号进行分析,重点分析信号的变化趋势,分别给出电磁辐射和声发射信号危险发生前(前兆特征)数据的趋势特征(不少于3个)。
  (2.2) 利用问题(2.1)中得到的特征,建立数学模型,对2020年4月8日-2020年6月8日及2021年11月20日-2021年12月20日的电磁辐射和2021年11月1日-2022年1月15日声发射信号中的前兆特征所在的时间区间进行识别,分别给出电磁辐射和声发射信号最早发生的5个前兆特征信号所在的时间区间,完成表3和表4。

表3 电磁辐射前兆特征时间区间
序号 时间区间起点 时间区间终点
1
2
3
4
5
表4 声发射前兆特征时间区间
序号 时间区间起点 时间区间终点
1
2
3
4
5

  问题3:为了尽早的识别前兆特征信号,在前兆特征信号出现的第一时间发出预警,需要在每次数据采集的时刻对危险进行预判。附件3给出了一些非连续时间段采集的电磁辐射和声发射信号数据。请建立数学模型,给出附件3中的每个时间段最后时刻出现前兆特征数据的概率,完成表5。

表5 采集数据所在时刻出现前兆特征的概率
电磁辐射数据所在时刻 前兆特征的概率 声发射数据所在时刻 前兆特征的概率
2023-1-24 23:58:36 2023-1-24 23:58:36
2023-2-11 23:59:20 2023-2-11 23:59:20
2023-2-26 23:59:27 2023-2-26 23:59:27
2023-3-10 23:58:14 2023-3-10 23:58:14
2023-3-30 23:58:13 2023-3-30 23:58:13