Git版本控制原理了解

版本控制的历史

集中式VS分布式

1)集中式版本控制系统

版本库是集中存放在中央服务器的,先从中央服务器取得最新的版本,更新后把版本推送给中央服务器。
集中式版本控制系统最大的弊端就是必须联网才能工作,

2)分布式版本控制系统(其实说白了,就是个人的版本也被管理起来,只是跟主版本有一个合并的过程)

Git的优势不单是不必联网这么简单,每个的电脑上都是一个完整的版本库,Git有极其强大的分支管理,其中最重要的意义在于档案库中包含了完整的版本管理数据、
例如提交信息、版本变化记录等等。因此,所有对版本控制系统的操作,都可以直接在本机端的档案库中进行,包括提交、分支、合并、回退等
更安全:和集中式版本控制系统相比,分布式版本控制系统的安全性要好很多,因为每个电脑里都有完整的版本库,某个人的电脑坏掉了不要紧, 
而集中式版本控制系统的中央服务器要是出了问题,所有人都没法干活了

git下载:https://www.git-scm.com/download/win

或者 https://pc.qq.com/detail/13/detail_22693.html(腾讯工具速度较快)

 分支

开源软件是由世界上无数的程序员共同来开发。

每个程序员都可以创建一个自己的分支,这个自己分支和主master完全独立的两个分支。

什么时候会用到分支呢?

假设你准备开发一个新功能,但是需要两周才能完成,第一周你写了50%的代码,如果立刻提交,由于代码还没写完,不完整的代码库会导致别人不能干活了。如果等代码全部写完再一次提交,又存在丢失每天进度的巨大风险,怎么办?

你可以创建一个属于自己的分支,别人看不见,还继续在原来的分支上工作,而你在自己的分支上进行开发,等开发完毕,合并即可。

分支的基本操作

基本操作有如下几个:

1.查看当前分支 (git branch)

2.创建分支 (git branch 分支名)

3.切换分支(git checkout 分支名)

4.分支上的常规操作

5.分支的合并 (git checkout master + git merge 分支名)

6.分支的删除(git branch -d 分支名)

分支的原理

分支的过程及原理如下:

默认只有master的情况下,master总是指向最新的版本,而HEAD指针总是指向master的。

现在,我创建了一个新的分支dev,将当前分支指定为dev,此时,master和dev都指向当前最新版本,但是HEAD指针已经指向了dev分支。

接下来,我们提交了新的版本,dev指向最新版本,而master则原地不动。

HEAD指向当前分支dev的。

当在dev分支上完成开发之后,可以将它合并到主分支master上。

合并时,需要先切换到master,意味着HEAD指向了master,合并的时候其实就是将master和dev的最新版本同步。

dev分支的使命已经完成,没有什么作用了,将其删除掉。只剩下一个主分支。

代下载服务2() 解决下载慢的问题。

查看原文:https://blog.csdn.net/wangliang888888/article/details/80536277

原文地址:https://www.cnblogs.com/liangtao999/p/11993931.html