版本控制系统可以帮助我们记录和跟踪项目中各个文件内容的修改变化。
版本控制工具自动化实现版本控制。
一、版本库
版本库是版本控制系统中存储所有历史数据的地方。
跟踪变更是版本控制系统的核心功能。
Git是分布式版本控制系统,每个程序员都在本地有一个版本库,程序员之间分享修改可以将修改上传到项目主版本库。
二、版本库中存储什么
版本库中可以存储一切,不过应该按需要存储,例如源代码、配置文件。
三、工作目录
工作目录树,也叫工作目录,是程序员写代码的地方。
工作目录包含了项目所需的全部文件。
Git中版本库在本地工作目录中的.git目录中。
工作目录两种创建方法:通过Git命令初始化版本库;克隆一个已有的版本库。
四、代码修改与文件同步
使用版本控制系统是为了记录和跟踪对文件的修改和变更。
每次提交操作都使得版本库中新增一个版本,粗了记录改动内容本身,版本库还记录改动的日志信息。
Git进行版本控制,除了把改动提交到本地版本库,还要推入远程版本库(存放所有人的修改的主版本库)。
可以从远程版本库中改动更新到本地版本库,第一步把远程版本库中版本和分支复制到本地版本库中;第二步把从远程版本库取来的改动与自己的改动合并。
五、跟踪项目、目录和文件
Git记录和跟踪版本库中组成文件的各部分内容,就是若干字符和代码行。
六、使用标签跟踪里程碑
标签以一个简单的名称来标记版本库历史中某个特定的点,便于日后查找和恢复。
七、使用分支来跟踪并进行演进
在项目开发中可以创建分支,从创建分支开始,每条分支记录这条分支上发生的变更,与其他分支隔离。
八、合并
合并操作可以把两条或两条以上的分支合并到一起。
当不同的变化发生在文件的不同部分时,Git能够自动合并;当不同变化发生在文件同一部分时候,Git不能自动合并,提示冲突。
九、锁机制
严格锁:当程序员从一版本库检出某个文件,版本库禁止其他人修改这个文件,直到该程序员检入为止。
乐观锁:允许多个程序员同时修改同一文件。