分支切换
$ git checkout testing
这样 HEAD 就指向 testing 分支了。
再提交一次:
HEAD 分支随着提交操作自动向前移动
(testing 分支向前移动了,但是 master 分支却没有,它仍然指向运行 git checkout时所指的对象)
分支切换回master:
$ git checkout master
这条命令做了两件事。 一是使 HEAD 指回 master 分支,二是将工作目录恢复成 master 分支所指向的快照内容。
(本质上来讲,这就是忽略 testing 分支所做的修改,以便于向另一个方向进行开发)
注:分支切换会改变你工作目录中的文件
在切换分支时,一定要注意你工作目录里的文件会被改变。 如果是切换到一个较旧的分支,你的工作目录会恢复到该分支最后一次提交时的样子。 如果 Git 不能干净利落地完成这个任务,它将禁止切换分支。
分支的合并
合并isa51分支到master分支:
$ git checkout master
$ git merge isa51
注:分叉历史
git log --oneline --decorate --graph --all