读书人

Git旁支浅谈 二

发布时间: 2012-11-04 10:42:42 作者: rapoo

Git分支浅谈 二
不妨我们再来提交一次:
vim test.rb
git commit -a -m 'made a change'

结果是:


嘿嘿,看到么,分支testing向前移动了一格,而master分支仍然指向原先git checkout时所在的commit对象。
现在我们回到master光临一下:

git checkout master



上面git checkout master做了两件事情。它把HEAD指针移回到master分支,并且把工作目录中的文件换成了master分支所指向的快照内容。也就是说,现在开始所做的改动,将始于本项目中一个叫老的版本。它的主要作用是将testing分支里作出的修改暂时取消,这样你就可以向另外一个方向进行开发。

我们做些修改后再次提交:

$vim test.rb
$git commit -a -m 'made other changer'

现在我们的项目提交历史产生了分叉,如下图:

因为我们刚才创建了一个分支,转换到其中进行了一些工作,然后又回到原来的主分支进行了另外一些工作。这些改变分别孤立在不同的分支里:我们可以在不同的分支里面反复切换,并在时机成熟时把他们合并到一起。而所有这些工作,仅仅需要branch和checkout这两条命令就可以完成,读到这儿你是否觉得git的分支很有兴趣了。

下面分析请参考:
git分支浅谈 三[url][/url]

读书人网 >开源软件

热点推荐