本文包含两部分内容
1,创建新的分支(branch)
2,回到项目的某个历史版本(history version)
git 创建项目分支(branch)可以很好的解决以下两个问题
1,测试,需要把代码改来改去;
2,给项目添加新的特性,添加新特性当然少不了测试;
为了不给项目带来麻烦,创建一个分支来完成以上任务绝对是明智的。
创建新的分支
一,查看当前分支
$ git branch -a
leslie (master) crawler $ git branch -a
hard-mode
* master
hard-mode
* master
remotes/origin/master
星号 表示当前所在分支,上面的案例中,当前在master中
二,创建新的分支
$ git branch easy-mode
leslie (master) crawler $ git branch easy-mode
leslie (master) crawler $ git branch -a
easy-mode
hard-mode
* master
hard-mode
* master
remotes/origin/master
三,切换分支
$ git checkout easy-mode
leslie (master) crawler $ git checkout easy-mode
Switched to branch 'easy-mode'
leslie (easy-mode) crawler $ git branch -a
* easy-mode
hard-mode
master
* easy-mode
hard-mode
master
remotes/origin/master
然后就可以在这个分支里面为所欲为了,所以的改动都不会影响master,你可以改到bug-free为止
返回到历史版本
一,查看有哪些历史版本
$ git log
commit 后面是 commit id, 下面有每一次commit的纪录,包括作者,时间以及 comment,我们可以根据comment来决定自己想返回到哪一个历史版本。然后copy commit id
二,切换到历史版本
$ git checkout commitID
返回的一长串英文,大概意思是,你现在在某某历史版本中,你可以在这里作些修改,提交,可以discard在这个状态下的commit,不会影响其他分支。
如果你想创建一个新的分支,并且保留你的commit,可以执行指令 git checkout -b new_branch_name
三,在历史版本中创建分支
$ git checkout -b history
leslie ((8a27a59...)) crawler $ git checkout -b history
Switched to a new branch 'history'
这样,就可以把项目回到历史某个版本,然后做一些测试,添加特性等等
最后,画一张图来说明在 master上直接创建新分支 和 回到历史版本创建新分支的区别