1. 程式人生 > 實用技巧 >kubernetes主流網路方案Flannel分析

kubernetes主流網路方案Flannel分析


title: Git學習筆記--(一)初始化本地庫
date: 2020-11-28 12:14:42
tags: git
categories: 學習筆記,git

一、建立和初始化本地庫

要是嫌棄沒有目錄,不易閱讀。可以移步到雲雨歸海的私人部落格。[私人部落格連線](https://yl1010code.github.io

1.建立資料夾(例:E:\testGit)

2.開啟Git Bash(Git終端)

小貼士:按住ctrl鍵使用+或-去放大終端上的字型大小(固定設定字型大小:滑鼠右鍵--》Options--》Text--》Select--》選擇字號--》Apply--》Save)
小貼士:設定編碼集 滑鼠右鍵--》Options--》Text--》Characher set選擇UTF-8--》Apply--》Save
驗證Git是否安裝完成(順便檢視下版本資訊):git --version
基本命令(與Linux上操作一樣):
clear 清屏

3.設定簽名

設定使用者名稱和郵箱

$ git config --global user.name " 你的使用者名稱"
$ git config --global user.email "你的郵箱"

4.本地倉庫的初始化操作

使用命令進入到你建立的資料夾內(例:E:\testGit)

$ cd e:
$ cd testGit

或者在資源管理器中建立的資料夾內滑鼠右鍵,開啟Git Bash
初始化命令

$ git init

5.檢視目錄命令

$ ll -la  //檢視包括隱藏的檔案,.git檔案是隱藏檔案(windows檢視隱藏檔案)

小貼士: config 配置檔案

二、提交檔案

add和commit命令,提交檔案到暫存區和本地庫(這樣才能對檔案進行後續管理)

1. 在本地倉庫資料夾中建立一個檔案 (例:test.txt)

2. 將檔案提交到暫存區

先開啟Git Bash終端輸入命令:

 $ git add "Demo1.txt" 

3. 將暫存區檔案提交到本地庫

開啟Git Bash終端輸入命令:

 $ git commit -m "這是我提交的第一個檔案" "Demo1.txt" 
 $ git commit -m "第一次提交檔案" "Demo1.txt"

小貼士: 引數:m:message “”中的是註釋,方便以後管理
小貼士: 提交檔案時可不用雙引號把檔名括起來

自己練習一下!

三、檢視緩衝區和本地庫狀態的命令:

$ git status

說明:
nothing to commit 說明暫存區是空的(在本地庫中放入一個檔案)

Untracked files: 沒有進行檔案追蹤,說明存在在本地庫資料夾中有尚未被提交到暫存區的檔案(使用add命令將其新增到暫存區)

Changes to be committed: 檔案可以被提交(使用commit命令,將檔案提交到本地庫)

0 insertions(+) ,0 deletions(-) 0行增加 ,0行刪除
修改檔案內容後,再次檢視狀態

modified 檔案已經修改了(可將已經修改的重新提交到暫存區和本地庫)

小貼士:在工作區(本地庫資料夾)中還沒有被提交到暫存區的狀態:untrack
通過add命令提交到暫存區,就是將檔案加入到index中,狀態變為:staged
通過commit命令可以將staged狀態的檔案加入到本地庫的HEAD中

四、檢視日誌

$ git log

commit eb5579cf745b6c68e6480f2fc19481bf9452f219 (HEAD -> master)

commit 後的十六進位制程式碼 可以看成鍵值對的索引,就是<key,value>中的key,key:索引,value:歷史記錄中的具體內容。通過索引可以找到歷史記錄中的具體內容。
小貼士: 歷史版本由近至遠
小貼士: 當歷史記錄太多時,出現 ”:“進行分頁,在”:“後通過空格回車可切換到下一頁
小貼士:
下一頁:空格
上一頁:b
到尾頁顯示END
退出:q

日誌展示方式

  • 以一種美觀的方式,將其在一行上展示出來
     $ git log --pretty=oneline
    
  • 顯示一部分索引,將其在一行上展示出來
    $ git log --oneline
  • 顯示指標回溯到相應的歷史版本需要的步數
     $ git reflog
    

    五、前進、後退歷史版本的命令

$ git reset --hard  【你所要跳到歷史版本的索引】// 就是前面說的很長的一竄十六進位制的數

小貼士:是指標名
小貼士:複製,在終端選中就是複製。貼上,右鍵滑鼠點選past。
小貼士:使用hard引數回溯歷史版本時,本地庫和暫存區已經本地儲存的檔案同步更改。
本地庫(HEAD)的指標移動時,重置暫存區(index)、重置工作區(一開始初始化建立的資料夾)

$ git reset --mixed 【索引】

本地庫(HEAD)指標移動的同時,重置暫存區(index),但是工作區(初始化時的資料夾)不動
小貼士:mixed引數不常用

$ git reset --soft 【索引】

本地庫(HEAD)指標移動的時候,暫存區(index)和工作區(初始化的資料夾)都不動
小貼士:引數不常用

六、刪除操作

刪除工作區中的檔案

$ rm 【檔名】

將刪除操作同步到暫存區

$ git add 【檔名】

將刪除操作同步到本地庫

$ git commit 【檔名】

小貼士: 該刪除不是物理刪除,只是改變了指標指向
找回本地庫中刪除的檔案

$ git reset --hard 【索引】

實際上就是將歷史版本切換到新增檔案時的版本
找回暫存區的檔案

$ git reset --hard 【索引】

七、檔案對比差異

1.在工作區建立一個檔案(例:TEST.txt),將其提交的暫存區和本地庫中

2.更改工作區內的檔案(TEST.txt),增加檔案內容,導致工作區和暫存區檔案不同步

小貼士:Git是以行為單位進行管理
將工作區和暫存區檔案進行比較的命令:

$ git  diff 【檔名】

多個檔案的比對命令:

$ git diff // 比較工作區和暫存區中所有檔案的差異

比較暫存區和本地庫的差異

$ git diff HEAD 【檔名】 // 比較暫存區和當前本地庫中該檔案的差異
$ git diff HEAD 【索引號】【檔名 】// 比較暫存區和歷史本地庫中該檔案的差異

八、檢視、建立、切換分支

概念
branch master主分支
branch分支
新的獨立的功能,開闢新的分支branch,從master主分支上覆制當前最新的版本到分支上。
小貼士:多個分支可以並行開發,各個分支互不影響
分支的合併
hot_fix 熱修復(分支合併出現bug後新開闢的分支)

操作

  • 檢視當前版本下的所有分支
$ git branch -v 
  • 建立分支
$ git branch 【分支名】

小貼士::分支名前面的*表示當前所在的分支

  • 切換分支
$ git checkout 【分支名】

小貼士:建立的新分支和當前主分支上最新版本索引號相同

檢視檔案內容命令:

$ cat 【檔名】

九、合併分支

將其他分支合併到主分支

  • 切換到主分支
$ git checkout master
  • 將分支合併到主分支
  $ git merge 【分支名】

小貼士:master|MERGING代表儲在合併狀態中

Merge conflict in 檔名 代表出現衝突
出現衝突的原因:在同一個檔案的同一個位置修改
保留下需要的,進行修改後
將工作區中的內容新增到暫存區
進行commit操作

$ git commit -m "解決了衝突問題" Demo1.txt

小貼士:不能帶檔名,否則出錯

十、為倉庫地址起別名(testRepository)

$ git remote -v 檢視遠端庫的別名
$ git remote add 別名 Github倉庫的地址

小貼士:fetch可以從倉庫取回東西,push可以推送東西

十一、推送命令:

$ git push 【別名】 master【要推送的分支名】

十二、克隆

選取下載到的碟符(下載到地址)
拉取命令:

$ git clone 遠端庫的地址

克隆操作可以幫我們完成

  • 初始化本地庫
  • 將遠端庫內容完整克隆到本地庫別名

十三、邀請加入團隊

使用push命令沒有讓輸入密碼也沒有報錯,push成功的原因是Git bash裡有快取
刪除快取:搜尋管理你的憑據
邀請加入團隊
進入遠端庫後點擊Settings在Manage access裡邀請普通成員
輸入邀請人的github賬戶名
Pending Invite就是邀請連線
接受邀請輸入,邀請連線

十四、遠端庫的修改和拉取操作

1.拉取pull操作的命令:相當於fetch+merge

2.專案經理先確定遠端庫內容是否更新了

3.專案經理進行拉取操作:

抓取操作

$ git fetch 【遠端庫別名或遠端庫地址】【分支名】

抓取後切換到遠端庫中的內容是否正確

$ git checkout 【遠端倉庫別名】/【分支名】

ll 檢視目錄
cat 【檔名】檢視檔案內容

發現內容都正確,進行合併操作
切換回本地庫的主分支

$ git checkout master

合併分支

$ git merge 【遠端庫別名】/【分支名】

小貼士:fetch操作只是將遠端倉庫裡的東西下載到本地,並沒有更新到工作區,工作區檔案不變

直接pull拉取
遠端庫已經更新後

$ git pull 【遠端倉庫別名】【分支名】

小貼士:fetch+merge 為了保險,pull程式碼簡單

十五、跨團隊合作

1.得到遠端庫的地址

2.fork操作

複製地址,點選fork操作

3.克隆到本地,進行修改

$ git clone 【地址】

4.新增到暫存區,提交到本地庫,推送到遠端庫

5.進行pull request操作

點選Pull requests

6.稽核

檢視請求點選pull requests
Files changed 可以檢視具體提交的內容
點選Merge pull request 進行合併

十六、跨團隊合作

1.得到遠端庫的地址

2.fork操作

複製地址,點選fork操作

3.克隆到本地,進行修改

$ git clone 【地址】

4.新增到暫存區,提交到本地庫,推送到遠端庫

5.進行pull request操作

點選Pull requests

6.稽核

檢視請求點選pull requests
Files changed 可以檢視具體提交的內容
點選Merge pull request 進行合併

十七、SSH免密登入

(如果作業系統不是windows10)push每次需要輸入賬戶和密碼
免密操作

1.進入到使用者的主目錄中的命令:

$ cd ~

2.執行命令生成一個.ssh的目錄

$ ssh-keygen -t rsa -C 【github對應的賬戶】

三次確認回車,使用預設設定
小貼士: C要大寫
在.ssh目錄下有兩個檔案id_rsa和id_rsa.pub,開啟id_rsa.pub檔案,將裡面的內容進行復制操作

3.開啟github 在頭像位置找到Settings --》SSH and GPG keys --》建立型的SSH keys,將複製的內容貼上到key中

4.生成金鑰以後就可以正常進行push操作

5.新增別名的命令

$ git remote add 【別名】 【遠端庫SSH協議下的地址】

十八、IDEA整合Git

建立project後,開啟File點選Settings選擇Git,設定git的安裝路徑
Path to Git executable:D:\study_setup\Git\bin\git.exe
Apply --》OK

1.本地庫的初始化操作

VCS選擇Import into Version Control選擇Create Git Repository
本地庫初始化完成,生成了.git檔案

2.在建立好的project中建立New Modul建立Package建立Class然後進行Java程式碼的書寫

3.在git中add新增到暫存區點選commit提交到本地庫(可添加註釋)Version control相當終端 Log日誌

十九、使用idea拉取推送資源

拉取

$ git pull 【別名】 【分支名】--allow-unrelated-histories

允許無聯絡的版本合併
小貼士:不同本地庫需要再次設定別名
推送

$ git push -u 【別名】【分支名】-f

遠端庫和本地庫已經可以進行互動了
直接commit和push(不推薦)
為了防止衝突,一般都是先pull後push

二十、使用idea克隆遠端倉庫到本地

利用IDEA進行克隆專案
new--》 Progect from Version Control--》Git
URL:遠端庫地址
Directory:放置位置
Test測試與遠端庫是否能連線上
Open Project 選擇New Window選擇在新視窗開啟
小貼士:克隆到本地後,這個目錄即變成了一個本地倉庫又變成了工作區間

二十一、使用idea解決衝突

1.製造衝突

2.A和B對同一個檔案的同一個位置進行修改

3.解決衝突

出現衝突後,提示進行merge操作,點選merge進行合併(可選擇合併的內容)

4.避免衝突

團隊開發時避免在一個檔案中改程式碼
在修改一個檔案之前,在push之前先pull操作,在別人的基礎上進行修改