Git基本概述

作者:老板丶鱼丸粗面 时间:2023-12-07 14:13:28 

大致介绍

Git是一款免费、开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目,可以有效、高速的处理从很小到非常大的项目版本管理。

Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件

Git的诞生

Git是由Linus编写的,这个名字应该不会陌生,著名的Linux就是Linus的杰作!(厉害的人干啥都厉害),虽然Linus创建了Linux,但是Linux的壮大是由全世界热心的参与者共同努力的结果,而在2002年以前,世界各地的志愿者把源代码文件通过diff的方式发给Linus,然后由Linus本人通过手工方式合并代码!

可想而知Linus的心有多累,但在2002年Linus选择了一个商业的版本控制系统BitKeeper,BitKeeper的东家BitMover公司出于人道主义精神,授权Linux社区免费使用这个版本控制系统

但是由于某种原因BitMover公司在2005年收回了Linux社区的免费使用权。然后Linus花了两周时间自己用C写了一个分布式版本控制系统,这就是Git!一个月之内,Linux系统的源码已经由Git管理了!(厉害的人干啥都厉害)

Git迅速成为最流行的分布式版本控制系统,尤其是2008年,GitHub网站上线了,它为开源项目免费提供Git存储,无数开源项目开始迁移至GitHub,包括jQuery,PHP,Ruby等等。

版本控制

◆ 本地版本控制系统

◆ 集中化的版本控制

◆ 分布式的版本控制

本地版本控制系统

大多的本地版本控制系统都是采用某种简单的数据库来记录文件的历次更新差异

Git基本概述

集中化的版本控制系统( Centralized Version Control Systems,简称 CVCS )

集中式版本控制系统,版本库是集中存放在中央服务器的,而干活的时候,用的都是自己的电脑,所以要先从中央服务器取得最新的版本,然后开始干活,干完活了,再把自己的活推送给中央服务器。中央服务器就好比是一个图书馆,你要改一本书,必须先从图书馆借出来,然后回到家自己改,改完了,再放回图书馆。

Git基本概述

集中式版本控制系统有几个明显的缺点:

1、如果遇到中央服务器故障,那么谁都无法进行提交,也就无法进行协同工作

2、必须联网进行操作

分布式的版本控制系统( Distributed Version Control System,简称 DVCS )

客户端并不只提取最新版本的文件快照,而是把代码仓库完整地镜像下来。这么一来,任何一处协同工作用的服务器发生故障,事后都可以用任何一个镜像出来的本地仓库恢复。因为每一次的提取操作,实际上都是一次对代码仓库的完整备份。

Git基本概述

分布式版本控制系统根本没有“中央服务器”,每个人的电脑上都是一个完整的版本库,这样,你工作的时候,就不需要联网了,因为版本库就在你自己的电脑上。既然每个人电脑上都有一个完整的版本库,那多个人如何协作呢?比方说你在自己电脑上改了文件A,你的同事也在他的电脑上改了文件A,这时,你们俩之间只需把各自的修改推送给对方,就可以互相看到对方的修改了

来源:http://www.cnblogs.com/qqandfqr/p/6345037.html

标签:Git
0
投稿

猜你喜欢

  • Web开发与JavaScript编辑利器——Aptana Studio简介

    2008-05-05 13:32:00
  • 用Dreamweaver MX设计各种网页鼠标样式

    2008-10-04 10:18:00
  • python事件驱动event实现详解

    2021-07-27 21:17:04
  • Python利用turtle库绘制彩虹代码示例

    2022-03-04 03:55:01
  • 如何基于python实现年会抽奖工具

    2022-01-28 04:24:42
  • 利用 Python ElementTree 生成 xml的实例

    2022-04-14 08:32:48
  • python儿童学游戏编程知识点总结

    2022-10-23 04:32:42
  • php+mysql查询优化简单实例

    2023-07-21 18:36:32
  • 7个Python中的隐藏小技巧分享

    2022-06-20 22:36:14
  • python读写修改Excel之xlrd&xlwt&xlutils

    2022-04-03 16:35:43
  • python pyecharts库的用法大全

    2021-04-21 13:48:05
  • python paramiko实现ssh远程访问的方法

    2021-07-17 23:03:55
  • 利用global.asa计划执行程序

    2008-03-05 12:49:00
  • python修改文件内容的3种方法详解

    2021-07-27 10:19:36
  • getAllResponseHeaders获取网页的http头信息代码

    2010-03-31 14:31:00
  • python字符串常见使用操作方法介绍

    2023-12-11 00:20:28
  • Python类的用法实例浅析

    2023-07-31 11:17:18
  • python增加图像对比度的方法

    2022-11-06 09:35:37
  • 15个用户体验设计剖析

    2010-05-11 16:43:00
  • python dataframe NaN处理方式

    2022-12-01 18:49:33
  • asp之家 网络编程 m.aspxhome.com