Git教程
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常用命令速查表