歡迎光臨
每天分享高質量文章

Git 常用命令速查手冊

點擊上方“芋道原始碼”,選擇“置頂公眾號”

技術文章第一時間送達!

原始碼精品專欄

 

來源:https://www.jianshu.com/p/5ee9897b6b65

命令不斷更新中……

Git的四個組成部分

img

1、初始化倉庫

git init

2、將檔案添加到倉庫

git add 檔案名 # 將工作區的某個檔案添加到暫存區   
git add -u # 添加所有被tracked檔案中被修改或刪除的檔案信息到暫存區,不處理untracked的檔案
git add -A # 添加所有被tracked檔案中被修改或刪除的檔案信息到暫存區,包括untracked的檔案
git add . # 將當前工作區的所有檔案都加入暫存區
git add -i # 進入交互界面樣式,按需添加檔案到快取區

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

git commit -m "提交說明" # 將暫存區內容提交到本地倉庫
git commit -a -m "提交說明" # 跳過快取區操作,直接把工作區內容提交到本地倉庫

4、查看倉庫當前狀態

git status

5、比較檔案異同

git diff # 工作區與暫存區的差異
git diff 分支名 #工作區與某分支的差異,遠程分支這樣寫:remotes/origin/分支名
git diff HEAD  # 工作區與HEAD指標指向的內容差異
git diff 提交id 檔案路徑 # 工作區某檔案當前版本與歷史版本的差異
git diff --stage # 工作區檔案與上次提交的差異(1.6 版本前用 --cached)
git diff 版本TAG # 查看從某個版本後都改動內容
git diff 分支A 分支B # 比較從分支A和分支B的差異(也支持比較兩個TAG)
git diff 分支A...分支B # 比較兩分支在分開後各自的改動

# 另外:如果只想統計哪些檔案被改動,多少行被改動,可以添加 --stat 引數

6、查看歷史記錄

git log # 查看所有commit記錄(SHA-A校驗和,作者名稱,郵箱,提交時間,提交說明)
git log -p -次數 # 查看最近多少次的提交記錄
git log --stat # 簡略顯示每次提交的內容更改
git log --name-only # 僅顯示已修改的檔案清單
git log --name-status # 顯示新增,修改,刪除的檔案清單
git log --oneline # 讓提交記錄以精簡的一行輸出
git log –graph –all --online # 圖形展示分支的合併歷史
git log --author=作者  # 查詢作者的提交記錄(和grep同時使用要加一個--all--match引數)
git log --grep=過濾信息 # 列出提交信息中包含過濾信息的提交記錄
git log -S查詢內容 # 和--grep類似,S和查詢內容間沒有空格
git log fileName # 查看某檔案的修改記錄,找背鍋專用

7、代碼回滾

git reset HEAD^ # 恢覆成上次提交的版本
git reset HEAD^^ # 恢覆成上上次提交的版本,就是多個^,以此類推或用~次數

git reflog

git reset --hard 版本號

--soft:只是改變HEAD指標指向,快取區和工作區不變;
--mixed:修改HEAD指標指向,暫存區內容丟失,工作區不變;
--hard:修改HEAD指標指向,暫存區內容丟失,工作區恢復以前狀態;

8、同步遠程倉庫

git push -u origin master

9、刪除版本庫檔案

git rm 檔案名

10、版本庫里的版本替換工作區的版本

git checkout -- test.txt

11、本地倉庫內容推送到遠程倉庫

git remote add origin [email protected]:帳號名/倉庫名.git

12、從遠程倉庫克隆專案到本地

git clone [email protected]:git帳號名/倉庫名.git

13、創建分支

git checkout -b dev
-b表示創建並切換分支
上面一條命令相當於一面的二條:
git branch dev //創建分支
git checkout dev //切換分支

14、查看分支

git branch

15、合併分支

git merge dev
//用於合併指定分支到當前分支

git merge --no-ff -m "merge with no-ff" dev
//加上--no-ff引數就可以用普通樣式合併,合併後的歷史有分支,能看出來曾經做過合併

16、刪除分支

git branch -d dev

17、查看分支合併圖

git log --graph --pretty=oneline --abbrev-commit

18、查看遠程庫信息

git remote
// -v 顯示更詳細的信息

19、git相關配置

# 安裝完Git後第一件要做的事,設置用戶信息(global可換成local在單獨專案生效):
git config --global user.name "用戶名" # 設置用戶名
git config --global user.email "用戶郵箱"   #設置郵箱
git config --global user.name   # 查看用戶名是否配置成功
git config --global user.email   # 查看郵箱是否配置

# 其他查看配置相關
git config --global --list  # 查看全域性設置相關引數串列
git config --local --list # 查看本地設置相關引數串列
git config --system --list # 查看系統配置引數串列
git config --list  # 查看所有Git的配置(全域性+本地+系統)
git config --global color.ui true //顯示git相關顏色

20、撤消某次提交

git revert HEAD # 撤銷最近的一個提交
git revert 版本號 # 撤銷某次commit

21、拉取遠程分支到本地倉庫

git checkout -b 本地分支 遠程分支 # 會在本地新建分支,並自動切換到該分支
git fetch origin 遠程分支:本地分支 # 會在本地新建分支,但不會自動切換,還需checkout
git branch --set-upstream 本地分支 遠程分支 # 建立本地分支與遠程分支的鏈接

22、標簽命令

git tag 標簽 //打標簽命令,預設為HEAD
git tag //顯示所有標簽
git tag 標簽 �版本號 //給某個commit版本添加標簽
git show 標簽 //顯示某個標簽的詳細信息

23、同步遠程倉庫更新

git fetch  origin master
 //從遠程獲取最新的到本地,首先從遠程的origin的master主分支下載最新的版本到origin/master分支上,然後比較本地的master分支和origin/master分支的差別,最後進行合併。

git fetch比git pull更加安全



如果你對 Dubbo / Netty 等等原始碼與原理感興趣,歡迎加入我的知識星球一起交流。長按下方二維碼噢

目前在知識星球更新了《Dubbo 原始碼解析》目錄如下:

01. 除錯環境搭建
02. 專案結構一覽
03. 配置 Configuration
04. 核心流程一覽

05. 拓展機制 SPI

06. 執行緒池

07. 服務暴露 Export

08. 服務取用 Refer

09. 註冊中心 Registry

10. 動態編譯 Compile

11. 動態代理 Proxy

12. 服務呼叫 Invoke

13. 呼叫特性

14. 過濾器 Filter

15. NIO 服務器

16. P2P 服務器

17. HTTP 服務器

18. 序列化 Serialization

19. 集群容錯 Cluster

20. 優雅停機

21. 日誌適配

22. 狀態檢查

23. 監控中心 Monitor

24. 管理中心 Admin

25. 運維命令 QOS

26. 鏈路追蹤 Tracing

… 一共 69+ 篇

目前在知識星球更新了《Netty 原始碼解析》目錄如下:

01. 除錯環境搭建
02. NIO 基礎
03. Netty 簡介
04. 啟動 Bootstrap

05. 事件輪詢 EventLoop

06. 通道管道 ChannelPipeline

07. 通道 Channel

08. 位元組緩衝區 ByteBuf

09. 通道處理器 ChannelHandler

10. 編解碼 Codec

11. 工具類 Util

… 一共 61+ 篇

目前在知識星球更新了《資料庫物體設計》目錄如下:

 

01. 商品模塊
02. 交易模塊
03. 營銷模塊
04. 公用模塊

… 一共 17+ 篇

 

目前在知識星球更新了《Spring 原始碼解析》目錄如下:

 

01. 除錯環境搭建
02. IoC Resource 定位
03. IoC BeanDefinition 載入

04. IoC BeanDefinition 註冊

05. IoC Bean 獲取

06. IoC Bean 生命周期

… 一共 35+ 篇

 

原始碼不易↓↓↓

點贊支持老艿艿↓↓

    赞(0)

    分享創造快樂