git從入門到精通

2021-10-25 08:37:43 字數 2919 閱讀 2958

因工作,需要給部門同事做乙個git培訓,以下是培訓記錄。

基本概念

工作區-暫存區-本地版本庫-遠端倉庫

分支管理

master,develop,issue*

git clone 轉殖

git status 檢視git狀態,工作區,暫存區狀態

git pull 從遠端倉庫拉最新**

git push 推送到遠端倉庫 ,指定源及分支 origin master

git branch 檢視分支/新建分支/檢視遠端分支-a

git checkout 切換分支/新建並切換分支 -b

git merge branch 合併某分支

git add 將修改新增到暫存區

git commit 將暫存區內容推送到本地版本庫

git log 檢視commit記錄/–oneline 單行顯示/–graph 提交圖

git blame 檢視某檔案提交記錄

conflict 解決衝突

1.本地工作區回滾

git checkout – file

git checkout .

該命令不回滾新增加的檔案

使用git clean -df 命令放棄本地檔案新增刪除等修改

git checkout . && git clean -df

2.暫存區回滾,即已add

git reset head file

git restore --staged file

3.本地版本庫回滾 ,已commit

有兩種方式

revert,抵消修改並新增恢復歷史

git revert head

缺點,只能抵消最近乙個提交,若多個提交需倒敘一一列出

優點,儲存混滾歷史,不會丟失**

git revert commitid10 commitid9 …

引數,–no-edit 不開啟編輯器,使用預設資訊

reset,徹底消失,丟棄掉某個提交後的所有提交

預設不改變工作區,會改變暫存區和本地版本庫

加上–hard引數,同步改變工作區內容

git reset commitid --hard

git log提交記錄會消失

如果版本號小於遠端倉庫,提交到遠端倉庫時時需要強制提交–force

git reflog,本地提交日誌,包括reset日誌,本地的。

1.1 比較工作區與暫存區

git diff 不加引數即預設比較工作區與暫存區

1.2 比較暫存區與最新本地版本庫(本地庫中最近一次commit的內容)

git diff --cached [

…]

1.3 比較工作區與最新本地版本庫

git diff head [

…] 如果head指向的是master分支,那麼head還可以換成master

1.4 比較工作區與指定commit-id的差異

git diff commit-id [

…]1.5 比較暫存區與指定commit-id的差異

git diff --cached [

…]1.6 比較兩個commit-id之間的差異

git diff

1.7 比較兩個分支,已commit部分差異

git diff branch1 branch2 展示所有有差異檔案整體差異資訊

引數 --stat 整體差異

引數 檔案路徑,具體檔案詳細差異

常用規則

/mtk/ 過濾整個資料夾

*.zip 過濾所有.zip檔案

/mtk/do.c 過濾某個具體檔案

需要注意已經提交建立聯絡的內容,.gitignore無效,需刪除快取

git rm -r --cached .

再提交tag 打標籤

git tag 顯示標籤

git tag v1 打標籤

git show v1 顯示詳情

git push --tags 推送

git tag -d v1 刪除本地標籤

git push origin :v1 刪除遠端標籤

修改commit 資訊

git commit --amend -m 「aa」

引數–amend 修改commit 資訊

修改源

新增git remote add origin

刪除git remote remove origin

重新命名git remote rename origin origin1

刪除分支,刪除遠端分支

git branch -d 刪除本地分支

git push origin --delete 刪除遠端分支

將本地分支與遠端分支建立對應關係

git branch --set-upstream-to=origin/thirdparty thirdparty

建立對應完成後,用git pull 和git push 即可完成相應推送

config配置

git config --list 檢視

git config -e 編輯當前倉庫

git config -e --global 編輯所有倉庫

git config --global user.name 「zander」

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

git從入門到精通(二)

git remote add origin 將本地庫與遠端庫做關聯 git push u origin master 將本地檔案推送到遠端倉庫,u 表示 自動將本地的 master 與 遠端的 master 做關聯 git config list 檢視已有的配置資訊 git reset test.t...

GIT入門到精通

git工作流 版本回退 分支管理 標籤管理 遠端倉庫 linux torvalds在 1991 年建立了開源的 linux,從此,linux系統不斷發展,已經成為最大的伺服器系統軟體了。linux雖然建立了linux,但linux的壯大是靠全世界熱心的志願者參與的,這麼多人在世界各地為linux編寫...

Git 入門到精通

git是乙個開源的分布式版本控制系統,用以有效 高速的處理從很小到非常大的專案版本管理。git的特點 git 是用於 linux核心開發的版本控制工具。與常用的版本控制工具 cvs,subversion 等不同,它採用了分布式版本庫的方式,不必伺服器端軟體支援 wingeddevil注 這得分是用什...