前面2節,主要講了git的概念和流程,本節主要講解git的相關命令。這裡我們先以網上的一張圖來展示各個主要的git命令的聯絡。
git主要的命令
(f)
a-b-c
↑master
我們輸入git reset --hard
就會變為如下:
(f)
a-b ↑
master
c狀態徹底被刪除了。
(f)
a-b-c
↑master
當輸入git reset --soft
就會變成如下:
(f)
a-b-c
↑master
(f)
a-b-c
↑master
當我們輸入了git reset --mixed
變為如下:
(f)
a-b-c
↑master
分支指標指向上次的提交,但是檔案的狀態還是在c狀態,即c狀態還在,只是沒有add,是紅色的。
-git branch
命令
該命令用於列出、建立或者刪除分支。
git branch
:該命令用於檢視當前有哪些分支。
git branch test3
:建立乙個新的分支test3
git branch -r
:檢視遠端分支
git branch -a
:檢視本地分支和遠端分支。
-git checkout
命令
該命令用於切換分支或者建立分支。
git checkout test3
:切換到test3分支上。
git checkout -b test4
:建立test4分支並切換到該分支上。
git checkout -b test5
:這個命令,可以強制建立新的分支,如果當前倉庫中,已經存在乙個跟你新建分支同名的分支,那麼使用普通的git checkout -b
這個命令,是會報錯的,且同名分支無法建立。如果使用-b
引數,那麼就可以強制建立新的分支,並會覆蓋掉原來的分支。
git checkout --merge
:在切換分支的同時將當前分支修改的內容一起打包帶走,同步到切換的分支下。
該命令需要注意兩個問題(慎用):
1.如果當前分支和切換分支的內容不同的話,容易造成衝突。
2.切換到新的分支後,當前分支修改過的內容就丟失了。
git checkout -p
:該命令可以用來打補丁。這個命令主要用來比較兩個分支間的差異內容,並提供互動式的介面來選擇進一步的操作。該命令不僅可以比較兩個分支間的差異,還可以比較單個檔案的差異。
-git merge
命令
該命令用於將兩個或者兩個以上的開發歷史加入(合併)一起。
git merge test
:講分支test合併到當前分支中,並自動進行新的提交。
git merge --no -commit maint
:將分支mint合併到當前分支中,但不要自動進行新的提交。
-git log
命令
該命令用於顯示提交的日誌資訊。
git log
:顯示歷史提交的所有日誌資訊
git log -3
:顯示最近三次的提交資訊
git log --no -merges
:顯示整個提交歷史記錄,但是跳過合併
git --since="2 weeks ago" -- gitk
:顯示最近兩周的更改檔案gitk
.--
是必須的,以避免與名為gitk
的分支混淆。
git log commit_id
:查詢commit_id
之前的提交記錄(包括commit_id
)。commit_id
為提交的雜湊值。
git log commit_id commit2_id
:查詢commit_id
與commit2_id
之間的記錄,包括commit_id
與commit2_id
.
git log commit_id..commit2_id
:同上,但不包括commit_id
。
git log (--pretty=)oneline
:--pretty
按指定格式顯示日誌資訊,可選項有:oneline,short,medium,full,fuller,email,raw以及format
:,預設為medium
,可以通過修改配置檔案來指定預設的方式。
常見指定格式有:
#選項 #說明
%h 提交物件(commit)的完整雜湊字串
%h 提交物件的簡短雜湊字串
%t 樹物件(tree)的完整雜湊字串
%t 樹物件的簡短雜湊字串
%p 父物件(parent)的完整雜湊字串
%p 父物件的簡短雜湊字串
%an 作者(author)的名字
%ae 作者的電子郵件位址
%ad 作者修訂日期(可以用 -date= 選項定製格式)
%ar 作者修訂日期,按多久以前的方式顯示
%cn 提交者(committer)的名字
%ce 提交者的電子郵件位址
%cd 提交日期
%cr 提交日期,按多久以前的方式顯示
%s 提交說明
其中:作者是指最後一次修改檔案的人;而提交者是指提交該檔案的人。
最後放上網上的2張很好的圖,直觀的顯示了git的整個流程。
Git 相關知識
git version 檢視當前git版本 也可用於檢查git是否安裝 git checkout 切換分支 git checkout master 切換到主分支 git checkout index swiper 切換到index swiper分支上 git merge origin index s...
git 相關知識 一
git常用命令 git config list 檢視配置 git config global user.name username 設定使用者名稱 git config global user.email email example.com 設定郵箱 global引數 表示這台機器上所有的git倉庫...
運放相關知識3
一 單電源反相放大器 式中負號是指相位取反,當輸入訊號是關於0電位對稱的三角波或正弦波時,在運放加入雙電源並且能夠正常工作的前提下,負號方可起作用。圖中運放是以單電源形式連線的,其負電源輸入端接地,從公式可以看出,當 uin為正值時,uout 為負值,但由於整個系統沒有負電壓,所以 uout 也不能...