git——基本概念
2017-08-25 16:51
141 查看
一、引言
理解git首先要对它自己的主要概念理解清楚,这个我看了一边后又重新梳理了一边思路,提取了几个自己很容易误解和难区分的概念,在这里详细介绍下==二、工作区与暂存区
工作区:就是你在电脑里能看到的目录,比如我的learngit文件夹就是一个工作区。暂存区:工作区有一个隐藏目录.git,这个不算工作区,而是Git的版本库。
Git的版本库里存了很多东西,其中最重要的就是称为stage(或者叫index)的暂存区,还有Git为我们自动创建的第一个分支master,以及指向master的一个指针叫HEAD。
提交过程:
第一步是用git add把文件添加进去,实际上就是把文件修改添加到暂存区;
第二步是用git commit提交更改,实际上就是把暂存区的所有内容提交到当前分支。
因为我们创建Git版本库时,Git自动为我们创建了唯一一个master分支,所以,现在,git commit就是往master分支上提交更改。
三、版本与分支
分支之下有版本,分支有合并,版本没有合并,push与pull只会涉及分支不会涉及版本。 这个灰常重要。分支切换用checkout,版本切换用reset版本:在同一个分支上的不同版本,版本之间可以相互切换,版本对应的是修改,不是对应文件。
分支:你创建了一个属于你自己的分支,别人看不到,还继续在原来的分支上正常工作,而你在自己的分支上干活,想提交就提交,直到开发完毕后,再一次性合并到原来的分支上,这样,既安全,又不影响别人工作。
其他版本控制系统如SVN等都有分支管理,但是用过之后你会发现,这些版本控制系统创建和切换分支比蜗牛还慢,简直让人无法忍受,结果分支功能成了摆设,大家都不去用。
四、分支合并
创建分支dev$ git checkout -b dev
commit分支dev
$ git add readme.txt $ git commit -m "branch test"
切换分支
$ git checkout master
合并分支到当前分支
$ git merge dev
期间你可以用git branch查看有那些分支
五、总结
工作区与暂存区版本与分支
分支合并