分布式版本控制-git

什么是版本控制

        版本控制是指对软件开发过程中各种程序代码、配置文件及说明文档等文件 变更的管理,是软件配置管理的核心思想之一。

        版本控制最主要的功能就是追踪文件的变更。它将什么时候、什么人更改了 文件的什么内容等信息忠实地了记录下来。每一次文件的改变,文件的版本号都 将增加。除了记录版本变更外,版本控制的另一个重要功能是并行开发。软件开 发往往是多人协同作业,版本控制可以有效地解决版本的同步以及不同开发者之 间的开发通信问题,提高协同开发的效率。

什么是 Git

        Git 是一个免费的开源 分布式版本控制系统,旨在快速高效地处理从小型到 大型项目的所有内容。

        Git 易于学习, 占地面积小,具有闪电般的快速性能。它具有诸如 Subver sion,CVS 之类的版本控制工具,具有廉价的本地分支,便捷的暂存区域和多个工作流等功能。

集中式版本控制(了解)

        集中化的版本控制系统诸如 CVS,SVN 等,都有一个单一的集中管理的服 务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务 器,取出最新的文件或者提交更新。多年以来,这已成为版本控制系统的标准做法。

        这种做法带来了许多好处,每个人都可以在一定程度上看到项目中的其他人正在 做些什么。而管理员也可以轻松掌控每个开发者的权限,并且管理一个集中化的 版本控制系统,要远比在各个客户端上维护本地数据库来得轻松容易。

        这么做显而易见的缺点是中央服务器的单点故障。如果服务器宕机一小时, 那么在这一小时内,谁都无法提交更新,也就无法协同工作。

 

分布式版本控制

        像 Git 这种分布式版本控制工具,客户端提取的不是最新版本的文件快照, 而是把代码仓库完整地镜像下来(本地库),这样任何一处协同工作用的文件发 生故障,事后都可以用其他客户端的本地仓库进行恢复。因为每个客户端的每一 次文件提取操作,实际上都是一次对整个文件仓库的完整备份。分布式的版本控 制系统出现之后,解决了集中式版本控制系统的缺陷:

1,服务器断网的情况下也可以进行开发(因为版本控制是在本地进行的)
2,每个客户端保存的也都是整个完整的项目(包含历史记录,更加安全)

 

Git 工作流程

本地工作流程及基本概念

                ​​​​​​​        

工作区:就是你在电脑里能看到的目录,在本地磁盘创建项目(一般在开发工具 中完成)。

暂存区:英文叫 stage 或 index。一般存放在 .git 目录下的 index 文件(. git/index)中,添加工作区代码到暂存区,暂存区代码是临时存储,可以撤销。

版本库:工作区有一个隐藏目录 .git,是 Git 的版本库,提交暂存区代码到本地 仓库,生成历史版本记录,历史版本记录不可删除,可以查看不同时期提交的历史记录,和其他版本做比较。

完整的运行流程(本地库与远程仓库)

1. 工作区代码添加到暂存区;

2. 暂存区代码提交到本地版本库;

3. 本地版本库代码推送到远程仓库;

4. 从远程仓库拉取代码到本地。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

不知名小佬

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值