Git 是一个开源的分布式的版本管理系统。已经被大部分科技公司所采用,作为自己的代码管理系统。最大的项目托管平台 GitHub 便是基于 Git 来管理代码版本。
为什么需要版本管理
如果你写过论文,或者为甲方写过稿,那么肯定体会被多个修改版本支配的恐惧。
最后导师又说,还是第一版看起来比较好,你可能会气得吐血。
对于程序开发也是一样,一个产品从开始到上线至少要经过几百个小版本的迭代开发,有的时候老板一句话,我们又要改回上一个版本。更别说一个项目还是几个开发人员,甚至上百个开发人员合作开发的。
因此,对于一个版本管理系统,至少要满足以下功能:
- 记录每次修改
- 保存多个版本文件
- 能够回滚到任意版本
- 能与他人合作管理仓库
Git 三大区域
git 有三大区域,分别是工作区、暂存区、仓库区。
- 工作区(working copy):我们项目开发的区域就是工作区,所有文件的编辑都在这上面完成。
- 暂存区(staging area):临时存放我们的改动的区域,当我们执行 $git add … 后文件将被提交到暂存区。
- 仓库区(repository ):已经提交后的代码区域,当我们执行 $git commit … 后文件将被提交到仓库区。
$$tip
git 会在仓库中保存我们每次 commit 之后的副本,这代表我们可以回退到之前任意的版本。
$$