git學習筆記(二)

2022-03-20 21:02:17 字數 1572 閱讀 1356

git log --stat //--stat引數可以看到每次提交的檔案變更統計

當前工作分支與版本庫的頭指標head

進行比較

git diff head

因為 git add

後,修改的檔案都已經新增到緩衝區了,使用

git diff 

比較不出差異,使用

git diff head 

才可以比較出差異,因為畢竟沒有提交

撤出快取區

git reset head 檔名

清楚不打算要的修改

git checkout -- 檔名

簡潔顯示狀態

git status -s

顯示日誌

git log --pretty=oneline

兩種狀態區別

加入緩衝區之前

加入緩衝區之後

兩個m位置不一樣

綠色的位於第一例的。表示版本庫中與緩衝區的不一樣有改動

紅色的位於第二列的.表示緩衝區的與當前工作目錄的不一樣有改動

git diff 是工作區與緩衝區的差異

git diff head 將工作區與當前分支做比較(當前分支也就是head相當於版本庫)

git diff --cached或者--staged  緩衝區和版本庫做比較

git commit 提交是提交緩衝區的改變到版本庫中

檢視.git/index 顯示時間戳

ls --full-time .git/index

git rm --cached 會從暫存區刪除檔案。工作區不作出改變

git checkout . 或者 

checkout -- 

會用暫存區的檔案或指定檔案替換工作區的檔案,這個操作很危險

git checkout head . 或者

git checkout head 

會用head

指向的master

分支中的全部或部分檔案替換工作區和暫存區的檔案,很危險

git ls-tree -l head //檢視

head

目錄樹-l 引數顯示檔案大小

git clean -fd

清除工作區當前沒有加入版本庫的檔案和目錄

git ls-files -s 顯示暫存區目錄樹

想針對暫存區的目錄樹使用git ls-tree

用git write-tree 

將暫存區的目錄樹寫入

git物件庫

git ls-tree -l 這裡是執行

git write-tree 

命令後顯示的

sha1

檢視暫存區目錄樹

遞迴操作顯示暫存區目錄樹

儲存當前工作進度

git stash

Git學習筆記(二)

1.忽略檔案 git提供了一種可配性很強的機制來允許使用者將制定的檔案或目錄排除在版本控制之外,它會檢查 倉庫的根目錄下是否存在乙個名為.gitignore的檔案,如果存在的話就去一行一行的讀取這個檔案裡邊的內容並把每一行指定的檔案或目錄排除在版本控制之外。注意.gitignore中指定的檔案或目錄...

Git學習筆記(二)

1 分支 git branch m master mymaster m引數告訴git要執行分支移動 重新命名 操作。另外兩個引數分別是分支原名稱和新名稱。git branch 檢視分支。該命令沒有引數,git顯示本地版本庫中所有的本地分支名稱。結果中,前面帶星號的分支是當前檢出的分支,即當前工作目錄...

Git學習筆記 二

小白一枚。學習筆記。僅供參考。歡迎指錯。二 基本的git概念 git版本庫不僅儲存庫中所有檔案的完整副本,而且儲存版本庫本身的副本。git維護的兩個主要的資料結構 物件庫 object store 索引 index 索引 臨時的 動態的二進位制檔案,它描述的是版本庫的目錄結構。更準確地說,索引捕獲專...