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