-
上傳到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:

## 中級
### 表格
使用源代碼格式,使用 | 區分列,使用三個以上-區分表頭,使用: 設置對齊方式(可不設置)
左對齊 | 居中 | 右對齊
:--- | :---: | ---:
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>
### 圖片
``??

## 高級
### 圖表
需要先在偏好設置內勾選圖片,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
查看全部
舉報