Git基本理解
1.版本控制
Git 是一个分布式版本控制系统 (Distributed Version Control System - DVCS)。
所谓版本控制,意思就是在文件的修改历程中保留修改历史,让你可以方便地撤销之前对文件的修改操作。很像文本编辑器都有的「撤销」功能,但是它必须:主动提交。
版本控制、主动提交、中央仓库这三个要素,共同构成了版本控制系统(VCS)的核心。
2.中央式版本控制系统(Centralized VCS)分布式的版本控制系统(Distributed VCS)
中央式 VCS
1.先有人写好框架,放到中央仓库中。
2.其他人,把中央仓库的代码取下来,然后各干各的,最后把写完的新功能提交到中央仓库;
3.及时同步,把同事提交到中央仓库的新代码及时取下来,然后继续开发。
分布式 DVCS
分布式 VCS 除了中央仓库之外,还有本地仓库:团队中每一个成员的机器上都有一份本地仓库,这个仓库里包含了所有的版本历史,或者换句话说,每个人在自己的机器上就可以提交代码、查看历史,而无需联网和中央仓库交互——当然,取而代之的,你需要和本地仓库交互。
中央式 VCS 的中央仓库有两个主要功能:保存版本历史、同步团队代码。而在分布式 VCS 中,保存版本历史的工作转交到了每个团队成员的本地仓库中,中央仓库就只剩下了同步团队代码这一个主要任务。它的中央仓库依然也保存了历史版本,但这份历史版本更多的是作为团队间的同步中转站。
1.你作为主工程师,独立搭建了项目架构,并把这些代码提交到了本地仓库;
2.然后,你在服务器上创建了一个中央仓库,并把 1 中的提交从本地仓库推送到了服务器的中央仓库;
3.其他同事把中央仓库的所有内容克隆到本地,拥有了各自的本地仓库,从此刻开始,你们三人开始并行开发;
在之后的开发过程中,你们三人总是每人独立负责开发一个功能,在这个功能开发过程中,一个人会把它的每一步改动提交到本地仓库。
注意:由于本地提交无需立即上传到中央仓库,所以每一步提交不必是一个完整功能,而可以是功能中的一个步骤或块。 在一个人把某个功能开发完成之后,他就可以把这个功能相关的所有提交从本地仓库推送到中央仓库;
4.每次当有人把新的提交推送到中央仓库的时候,另外两个人就可以选择把这些提交同步到自己的机器上,并把它们和自己的本地代码合并。
注意:DVCS的本地仓库、与VCS本地的区别。本地仓库是带版本管理功能的,像可以离线做一些提交,回滚、查看历史、分支操作。。。,而VCS的本地备份如脱离服务器则做不上面的这些操作,中央式的没有本地仓库的,本地只有一份你签出的代码和最基本的版本信息(服务器在哪,以及一些关于版本号的缓存什么的)
文章来源:https://juejin.im/book/5a124b29f265da431d3c472e/section/5a124bb26fb9a0450c490173
最新文章
- 【JAVA并发编程实战】3、同步容器
- Oracle 12.1.0.2 New Feature翻译学习【In-Memory column store内存列存储】【原创】
- 博客 博客vno主题(我正在用的这个博客主题)
- JAVA 冒泡算法
- ubuntu14.04 安装 bcm43142无线网卡
- 关于win7系统中所有exe文件都被以word方式打开的解决方法
- leetcode面试准备:Decode Ways
- tomcat绿色版及安装版修改内存大小的方法
- SQL Prompt 破解之道
- JPA之常用 基本注解
- 15个HTML元素方法!
- Web系统大规模并发——秒杀与抢购 秒杀系统优化与预防措施
- 利用guava来实现本地的cache缓存
- SQL Server 2016 发送邮件功能
- 批标准化 Batch Normalization
- java 内部类 工厂方法
- How to enable TLS 1.2 on Windows Server 2008 R2
- shell 脚本实战笔记(2)--环境变量PATH的恩怨情仇
- C# TreeView 自定义显示checkbox
- SharePoint2010QuickFlow安装及使用