分支的新建和合并
新建分支
切换分支
删除分支
合并分支
冲突分支合并
分支管理
新建分支
git checkout -b name
这条命令可以创建名为name的新分支,这条命令相当于一下两条命令
git branch name
git checkout name
在这个时候我们的HEAD
指针指向了name分支。
切换分支
如果工作目录或者暂存区有没有提交的修改,可能会产生冲突阻止分支切换。这时可以执行一下操作:
保存进度 stashing
修补提交commit amending
当切换分支时,Git会重置工作目录,使得工作目录看起来像回到该分支最后一次提交的样子。
删除分支
git branch -d name
合并分支
git merge name
冲突分支合并
git merge name
该命令在此时不会自动的创建合并提交,Git会暂停等待解决冲突。可以在解决冲突的过程中使用git status
命令来查看那些包含冲突并没有合并的文件。任何因包含合并冲突有待解决的文件都会以为合并状态标识出来。
在解决文件冲突之后,对文件使用git add
命令来将标记冲突已解决。将文件暂存就会标记冲突已解决。git mergetool
该命令会启动一个可视化的合并工具。
分支管理
git branch
该命令不止可以创建删除分支,在不加任何参数的时候可以得到分支列表。
分支前带有*
字符表示现在检出的是该分支。如果需要查看每一个分支最后一次提交,可以运行git branch -v
命令。--merged
和--no-merged
这两个选项可以过滤列表中已经合并或尚未合并到当前分支的分支。
Git的分支都是保存在本地的,当新建合并删除分支的时候,所有的改动都发生在本地的Git版本库中,不与服务器发生交互。