-
上传到github时,需要忽略的的一些文件,就可以创建一个叫 .gitignore 的文件
.文件夹
在项目目录中 git init 创建git项目
git add .
git commit -m 第一次上传文件
git remote add origin https://github.com/C-SITW/test-demo.git
git push origin master
查看全部 -
上传到github时,需要忽略的的一些文件,就可以创建一个叫 .gitignore 的文件
.xxx文件夹
查看全部 -
查看全部
-
## raft学习
### 分布式系统的挑战
1. 时序性 Timing 运行再不同网络下的机器中的进程如何判断一些时间发生的顺序
2. 并发性 Concurrency 运行再不同网络下的机器中的进程如何共享资源,互不干扰
3. 健壮性 Robustness 应对网络的不稳定性以及硬件的不稳定性
4. 一致性 Consistency 如何保障无论访问哪个服务节点,都能获得相同的结果
### raft leader election
raft节点有三种状态,Leader,Candidate,Follower
节点会不断接收Leader发送的信息(heartbeat timeout),如果节点在一段时间内没能收到Leader信息(election timeout),节点状态就会变为候选人Candidate,然后向其他节点发起投票,其他节点如果term小于候选人发过来的信息,会先同步term然后参与投票,其他节点投票超过半数就会选举候选人为新的Leader。
election timeout(150ms~300ms)远远大于heartbeat timeout
term是单调递增的整数,数值越大表示越新
每个节点在每个term内只能投票一次
平票会重新选举
### raft log replication
当raft集群收到一个请求(log entry)时会告诉Leader,并加入到log entries,此时请求处于uncommit状态不会被执行。Leader会发送这个请求(Replica)到其他follower(这个过程叫Append Entry),Follower会返回他一个投票,如果过半数Leader就会commit请求,并同步到所有follower,follower接收后也会将日志apply到他们的状态机里
### 参考资料
[b站 推荐](https://www.bilibili.com/video/BV1Wy4y1K7zF?from=search&seid=4139253983763889779)
查看全部 -
# MD湿鞋 -- Typora
## 基础
### 标题
使用#号的个数代表标题级数,最多支持6级标题
### 删除线
在文字前后加两个~ ~~这是删除线~~
### 斜体
在文字前后加* *这是斜体*
### 加粗
在文字前后加** **这是粗体**
### 斜体+加粗
在文字前后加3个* ***这是斜体+粗体***
### 下划线
HTML语法使用u标签 <u>这是下划线</u>
### 注释
<!--这是注释-->
### 高亮(扩展语法)
前后加两个=号 ==这是高亮==
### 下标(扩展语法)
前后加~ 水H~2~O 双氧水H~2~O~2~
### 上标
前后加^ 平方m^2^ 立方m^3^
### 表情
使用: 加单词,可选择 :smile: :gift:
![emoji](C:\Users\wb-gdx568838\AppData\Roaming\Typora\typora-user-images\emoji .png)
## 中级
### 表格
使用源代码格式,使用 | 区分列,使用三个以上-区分表头,使用: 设置对齐方式(可不设置)
左对齐 | 居中 | 右对齐
:--- | :---: | ---:
abc | 111 | AAA
cba | 222 | BBB
### 引用
段落前加 > 符号
>这是引用
>
>> 二级引用
### 无序列表
* 使用*后加空格
- 也可以使用-后加空格
+ 也可以使用+后加空格
### 有序列表
1. 使用数字加点加空格
### 代码块
使用符号三对``符号并选择语言
```python
def test_markdown(str)
print(str)
return
```
```java
public static void mian (){
}
```
行内代码用一对即可 `python`
### 分割线
输入***或---直接回车
***
---
### 超链接 -- 外部跳转
`[输入提示](外部地址)` [这是百度](http://www.baidu.com)
### 超链接 -- 内部标题
`[输入提示](#标题名称)` [跳转到开头](#MD湿鞋)
### 内部链接
使用<> 在内部编写链接 <www.baidu.com>
### 图片
`![输入提示](图片地址)`
![阿里云](http://img1.sycdn.imooc.com/610cecff0001160e02120048.jpg)
## 高级
### 图表
需要先在偏好设置内勾选图片,mermaid生成的图并不是图片而是HTML代码
### 流程图
graph TB(从上到下)/ BT(从下到上)/ RL(从右到左)/ LR(从左到右)
```mermaid
graph RL;A[第一个]-->B[第二个];B-->C(第三个);C-->A
```
```mermaid
graph BT
A[默认矩形]
B(圆角)
C((圆形))
D{菱形}
E>旗帜]
```
```mermaid
graph TB
A1-->B1
A2---B2
A3--text---B3
A4--text-->B4
A5-.-B5
A6-.->B6
A7-.text.-B7
A8-.text.->B8
A9===B9
A10==>B10
A11==text===B11
A12==text==>B12
```
### 子图表
```mermaid
graph TB
subgraph 买炸鸡前
begin(出门)--> buy[出门买炸鸡]
end
buy --> IsRemaining{"还有没有炸鸡?"}
IsRemaining --没有--> sad["伤心"]--> goBack(回家)
IsRemaining -->|有|happy[买完炸鸡开心]--> goBack
```
### 序列图
```mermaid
sequenceDiagram
Title: 买炸鸡
救救->>炸鸡店小哥: 还有炸鸡吗?
炸鸡店小哥-->>救救: 没有,要现炸
救救->>炸鸡店小哥: 还有炸鸡吗?
炸鸡店小哥-->>救救: 没有,要现炸
```
#### 参与者
```mermaid
sequenceDiagram
participant 参与者 1
participant 参与者 2
participant 简称 as 参与者 3 #该语法可以在接下来的描述中使用简称来代替参与者 3
```
#### 消息线
符号 | 解释
---|---
-> |无箭头的实线
–> |无箭头的虚线
->> |有箭头的实线(主动发出消息)
–->> |有箭头的虚线(响应)
-x |末端为叉的实线(表示异步)
–x |末端为叉的虚线(表示异步)
#### 处理中-激活框
从消息接收方的时间线上标记一小段时间,表示对消息进行处理的时间间隔。
在消息线末尾增加 `+` ,则消息接收者进入当前消息的“处理中”状态;
在消息线末尾增加 `-` ,则消息接收者离开当前消息的“处理中”状态。
```mermaid
sequenceDiagram
participant 99 as 救救
participant seller as 炸鸡店小哥
99 ->> seller: 还有炸鸡吗?
seller -->> 99: 没有,要现炸。
99 -x +seller:给我炸!
seller -->> -99: 您的炸鸡好了!
```
#### 注释
```mermaid
sequenceDiagram
participant 99 as 救救
participant seller as 炸鸡店小哥
Note over 99,seller : 热爱炸鸡
Note left of 99 : 女
Note right of seller : 男
99 ->> seller: 还有炸鸡吗?
seller -->> 99: 没有,要现炸。
99 -x +seller : 给我炸!
seller -->> -99: 您的炸鸡好了
```
#### 循环
```mermaid
sequenceDiagram
participant 99 as 救救
participant seller as 炸鸡店小哥
99 ->> seller: 还有炸鸡吗?
seller -->> 99: 没有,要现炸。
99 ->> +seller:给我炸!
loop 三分钟一次
99 ->> seller : 我的炸鸡好了吗?
seller -->> 99 : 正在炸
end
seller -->> -99: 您的炸鸡好了!
```
```mermaid
sequenceDiagram
participant 99 as 救救
participant seller as 炸鸡店小哥
99 ->> seller : 现在有多少只炸好的炸鸡?
seller -->> 99 : 可卖的炸鸡数
alt 可卖的炸鸡数 > 3
99 ->> seller : 买三只!
else 0 < 可卖的炸鸡数 < 3
99 ->> seller : 有多少买多少
else 可卖的炸鸡数 = 0
99 ->> seller : 那我明天再来
end
seller -->> 99 : 欢迎下次光临
```
#### 可选
```mermaid
sequenceDiagram
participant 99 as 救救
participant seller as 炸鸡店小哥
99 ->> seller : 买炸鸡
opt 全都卖完了
seller -->> 99 : 下次再来
end
```
#### 并行
```mermaid
sequenceDiagram
participant 99 as 救救
participant seller as 炸鸡店小哥
99 ->> seller : 一个炸鸡,一杯可乐!
par 并行执行
seller ->> seller : 装可乐
and
seller ->> seller : 炸炸鸡
end
seller -->> 99 : 您的炸鸡好了!
```
### 饼图
```mermaid
pie
title Pie Chart
"Dogs" : 386
"Cats" : 85
"Rats" : 150
```
### 甘特图
```txt
title 标题
dateFormat 日期格式
section 部分名
任务名:参数一, 参数二, 参数三, 参数四,参数五
//参数一:crit(是否重要,红框框) 或者 不填
//参数二:done(已完成)、active(正在进行) 或者 不填(表示为待完成状态)
//参数三:取小名 或者 不填
//参数四:任务开始时间
//参数五:任务结束时间
```
```mermaid
gantt
dateFormat YYYY-MM-DD
title Adding GANTT diagram functionality to mermaid
section A section
Completed task :done, des1, 2014-01-06,2014-01-08
Active task :active, des2, 2014-01-09, 3d
Future task : des3, after des2, 5d
Future task2 : des4, after des3, 5d
section Critical tasks
Completed task in the critical line :crit, done, 2014-01-06,24h
Implement parser and jison :crit, done, after des1, 2d
Create tests for parser :crit, active, 3d
Future task in critical line :crit, 5d
Create tests for renderer :2d
Add to mermaid :1d
section Documentation
Describe gantt syntax :active, a1, after des1, 3d
Add gantt diagram to demo page :after a1 , 20h
Add another diagram to demo page :doc1, after a1 , 48h
section Last section
Describe gantt syntax :after doc1, 3d
Add gantt diagram to demo page :20h
Add another diagram to demo page :48h
```
## 学习地址
[b站](https://www.bilibili.com/video/BV1C7411V7SF?p=2) [文档](https://blog.csdn.net/weixin_41452976/article/details/104299766)
查看全部 -
创建分支
git branch branchName
比如创建一个dev分支
git branch dev git branch
通过git branch查看分支
查看全部 -
解决远程仓库不同人修改不同代码合并
1.拉取数据:git fetch
2.查看远程端仓库 git branch -av
3.合并代码:git merge origin/test //test 是修改人
4.提交代码:git push
查看全部 -
远程拉取代码和分支信息
git fetch
远程删除分支
git push origin --delete 分支名称
查看全部 -
查看版本简写日志:git log --oneline
查看版本路线:git log --oneline --graph
查看全部 -
合并有冲突的代码
第一种:保留当前分支代码
git merge --abort
第二种:手动修改
1.先执行 git merge dev
2.去除提示代码和不想要的代码
3.执行 git add .
4.执行 git commit 执行后有 vim 编辑器 按i 进入编辑状态,输入编辑内容,再按esc按钮,在输入:wq 退出并保存
查看全部 -
合并分支代码命令
git merge dev
查看全部 -
新增分支
git branch 分支名称
新增分支并跳转到新增分支
git checkout -b 分支名称
查询分支
git branch
切换分支
git checkout 分支名称
删除分支(不能删除当前分支)
git branch -d 分支名称
强制删除分支(有提交代码,无法删除分支可以使用这个命令)
git branch -D 分支名称
查看全部 -
提交远程仓库命令
git push origin master
查看全部 -
新增标签
git tag 标签名
历史提交标签
git tag 标签名 提交Id
删除标签
git tag -d 标签名
推送标签到远程仓库
git push origin 标签名
查看全部 -
如何回到上个版本或指定版本
两种方式:
1.git reset --hard HEAD^ //这里的^数量表示回退的版本量,一个^表示回退一个版本两个^表示回退两个版本,依次类推 ,使用cmd时候
因为cmd控制台中换行符默认是^,而不是\ ,所以^符号被git编译为换行符了,解决方案:加上双引号
git reset --hard "HEAD^"
2.git reset --hard 提交id //提交id可以通过 git log 获得
查看全部 -
当文件add以后,文件被加入追踪状态
撤销并还原文件
撤销命令:git reset HEAD home/hillo.html
还原命令: git checkout -- home/hillo.html
查看全部 -
操作失误如何实现一键还原的命令(本地仓库而且未提交情况下)
git checkout -- home/hillo.html
查询本地所有文件修改不同地方
git diff
查看全部 -
查询文件前后变化的命令
第一种:
1.git log --pretty=oneline home/home.css
2.获取提交id 使用命令:git show 提交id
第二种:
1.git log -p home/home.css
查看全部
举报