Git 命令行操作

1、本地庫初始化

命令

git init 

效果
在這裏插入圖片描述
注意:.git 目錄中存放的是本地庫相關的子目錄和文件,不要刪除,也不要胡 亂修改。

2、設置簽名

形式
    用戶名:tom
    Email 地址:[email protected]
作用:區分不同開發人員的身份
辨析:這裏設置的簽名和登錄遠程庫(代碼託管中心)的賬號、密碼沒有任何關係。
命令 ,分兩個級別
項目級別/倉庫級別:僅在當前本地庫範圍內有效

git config

例如:

git config user.name tom_pro
git config user.email [email protected] 

信息保存位置:./.git/config 文件
在這裏插入圖片描述
系統用戶級別:登錄當前操作系統的用戶範圍

git config --global

例如:

git config --global user.nametom_glb
git config --global [email protected]

信息保存位置:~/.gitconfig 文件
在這裏插入圖片描述
級別優先級
就近原則:項目級別優先於系統用戶級別,二者都有時採用項目級別 的簽名
如果只有系統用戶級別的簽名,就以系統用戶級別的簽名爲準
二者都沒有不允許

3、基本操作

3.1 狀態查看

 git status 

查看工作區、暫存區狀態

3.2 添加

 git add [filename] 

將工作區的“新建/修改”添加到暫存區

3.3 提交

git commit -m "commitmessage" [filename] 

將暫存區的內容提交到本地庫

3.4 查看歷史記錄

git log

在這裏插入圖片描述
多屏顯示控制方式:
空格向下翻頁
b 向上翻頁
q 退出

git log --pretty=oneline

作用:每一條日誌只顯示一行
在這裏插入圖片描述

git log --oneline

作用:每一條日誌只顯示一行,其中hash值只顯示一部分
在這裏插入圖片描述

git reflog

作用:相比上一條命令多了一個移動步數
在這裏插入圖片描述
HEAD@{移動到當前版本需要多少步}

3.5 前進後退

在這裏插入圖片描述
(1)基於索引值操作[推薦]

git reset --hard[局部索引值]
git reset --hard a6ace91

(2)使用^符號:只能後退

git reset --hard HEAD^

注:一個^表示後退一步,n 個表示後退 n 步
(3)使用 ~ 符號:只能後退

git reset --hard HEAD~n

注:表示後退 n 步

3.6 reset 命令的三個參數對比

(1) --soft 參數
    僅僅在本地庫移動 HEAD 指針
在這裏插入圖片描述
(2) --mixed 參數
    在本地庫移動 HEAD 指針
    重置暫存區
在這裏插入圖片描述
(3)–hard 參數
    在本地庫移動 HEAD 指針
    重置暫存區
    重置工作區

3.7 刪除文件並找回

前提:刪除前,文件存在時的狀態提交到了本地庫。
操作

git reset --hard [指針位置]

    刪除操作已經提交到本地庫:指針位置指向歷史記錄
    刪除操作尚未提交到本地庫:指針位置使用 HEAD

3.8 比較文件差異

(1)將工作區中的文件和暫存區進行比較

git diff [文件名]

(2)將工作區中的文件和本地庫歷史記錄比較

git diff [本地庫中歷史版本] [文件名] 

(3)不帶文件名比較多個文件

git diff

4、分支管理

4.1 什麼是分支?

在版本控制過程中,使用多條線同時推進多個任務。
在這裏插入圖片描述

4.2 分支的好處?

(1)同時並行推進多個功能開發,提高開發效率
(2)各個分支在開發過程中,如果某一個分支開發失敗,不會對其他分支有任
何影響。失敗的分支刪除重新開始即可。

4.3 分支操作

(1)創建分支

git branch [分支名]

(2)查看分支

git branch -v

(3)切換分支

git checkout [分支名]

(4)合併分支
第一步:切換到接受修改的分支(被合併,增加新內容)上

git checkout [被合併分支名]

第二步:執行 merge 命令

git merge [有新內容分支名]

(5)解決衝突
衝突的表現
在這裏插入圖片描述
衝突的解決
第一步:編輯文件,刪除特殊符號
第二步:把文件修改到滿意的程度,保存退出
第三步:git add [文件名]
第四步:git commit -m "日誌信息"
注意:此時 commit 一定不能帶具體文件名

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章