理解git中的commit,master,branch,head

git仓库的基本骨架是若干commit的拓展而成,master和其他branch是引导commit的延伸方向,可以理解成引导者;一个git仓库仅有一个head,head指向引导者(branch),当前分支是哪个,head就指向哪个分支。

git仓库的厨师状态:

新建分支Dev,Dev会指向当前master分支的最近一次commit。

当我们使用命令:

git checkout dev


切换到Dev分支后,HEAD就指向当前分支Dev了。

在Dev上修改,比如修改helloworld.c,然后提交,分支Dev指向当前分支的最新提交,而master指向master分支的最新提交。

切换回到master分支:

git checkout master


然后再master分支上查看helloworld.c,我们发现并没有被修改。

为了将在分支Dev上所做的修改也作用的master分支上,也就是说将Dev分支合并(merge)到master分支上。

git merge dev


这时候master指向了Dev的最近一次提交。而head指向当前分支即master。

当利用分支Dev做好修改工作后,就可以把Dev删除掉。兔死狗烹,卸磨杀驴。

git branch -d dev

 

posted @ 2019-02-13 11:23  LiWeiAiLa  阅读(2365)  评论(0编辑  收藏  举报