Git分支

分支简介

  1. Git默认创建master分支,其实它是一个指向提交对象的可变指针。
  2. 当前分支会在每次的提交操作中自动向前移动。
  3. Git有一个特殊指针HEAD指向当前分支,相当于当前分支的别名。
  4. 创建新分支即创建了一个指向最后提交对象的可移动的新指针。

分支管理

  1. 创建分支,此时HEAD仍指向master
    git branch newbr
  2. 切换分支,此时HEAD指向newbr
    git checkout newbr
    切换分支会改变工作目录中的文件,如果在不同分支提交,则项目提交会产生分叉,需要在合适的时机将其合并。
  3. 创建并切换分支
    git checkout -b newbrc
  4. 删除分支
    git branch -d newbrc
    强制不保存删除需使用-D选项
  5. 合并分支,如将newbr分支合并到master分支
    git checkout master
    git merge newbr
  6. 出现合并冲突
    使用git status查看分支合并冲突的原因,手动修改后使用git add命令添加到暂存区表示冲突已解决。
  7. 查看分支列表
    git branch
    带*标记的为当前分支;使用-v选项显示每个分支最后一次提交;
    使用--merged查看已合并到当前分支的分支,使用--no-merged查看未合并到当前分支的分支。

分支开发工作流

  1. 可以将分支想象成流水线,经过测验成功的提交会被添加到稳定的流水线上。
    详细信息见pro-Git2中P86-98
  2. 通常显式使用git fetchgit merge操作代替git pull
  3. 删除远程分支
    git push origin --delete newbr
posted @ 2018-08-01 22:51  bkycrab  阅读(184)  评论(0编辑  收藏  举报