git merge是在Git中使用比較頻繁的一個命令,其主要用于將兩個或兩個以上的開發歷史加入(合并)一起。本文就為大家帶來git merge命令的常見用法。
git merge [-n] [--stat] [--no-commit] [--squash] [--[no-]edit]
[-s ] [-X ] [-S[]]
[--[no-]allow-unrelated-histories]
[--[no-]rerere-autoupdate] [-m ] […?]
git merge --abort
git merge --continue
⒉ git merge用途
git-merge命令是用于從指定的commit(s)合并到當前分支的操作。
(1)用于git-pull中,來整合另一代碼倉庫中的變化(即:git pull = git fetch + git merge)
(2)用于從一個分支到另一個分支的合并
假設下圖中的歷史節點存在,并且當前所在的分支為“master”:
那么git merge topic命令將會把在master分支上二者共同的節點(E節點)之后分離的節點(即topic分支的A B C節點)重現在master分支上,直到topic分支當前的commit節點(C節點),并位于master分支的頂部。并且沿著master分支和topic分支創建一個記錄合并結果的新節點,該節點帶有用戶描述合并變化的信息。
即下圖中的H節點,C節點和G節點都是H節點的父節點。
⒊ git merge HEAD ...命令
該命令的存在是由于歷史原因,在新版本中不應該使用它,應該使用git merge -m ....進行替代
該命令僅僅在合并后導致沖突時才使用。git merge --abort將會拋棄合并過程并且嘗試重建合并前的狀態。但是,當合并開始時如果存在未commit的文件,git merge --abort在某些情況下將無法重現合并前的狀態。(特別是這些未commit的文件在合并的過程中將會被修改時)
警告:
運行git-merge時含有大量的未commit文件很容易讓你陷入困境,這將使你在沖突中難以回退。因此非常不鼓勵在使用git-merge時存在未commit的文件,建議使用git-stash命令將這些未commit文件暫存起來,并在解決沖突以后使用git stash pop把這些未commit文件還原出來。
以上就是Git merge命令的一些常見用法,希望對大家有所幫助。想要了解更多Git命令,可點擊:Git常用命令速查表