【Git版本控制管理】

文章目录

  • 【Git版本控制管理】
    • 一、Git简介
      • 三大类版本控制系统
      • Git的三种状态
      • 基本工作流程
    • 二、安装Git

一、Git简介

  • Git 由Linus Torvalds(也是发明Linux操作系统的人)发明,起初是为了方便管理Linux 内核的开发工作。如今,Git 已经在大量的项目中得到了非常成功的应用。

  • Git 是一种功能强大灵活而且低开销的版本控制系统

  • 版本控制是一种记录一个或若干文件内容变化,以便将来查阅特定版本修订情况的系统。

  • 常见的远程仓库 GitHubGitee 都是使用Git的控制方式,因此掌握Git的基本知识对使用GitHub和Gitee十分有用!

三大类版本控制系统

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

  • 集中化的版本控制系统 (Centralized Version Control Systems,简称 CVCS) : 一个单一的集中管理的服务器,保存所有文件的修订版本,而协同工作的人们都通过客户端连到这台服务器,取出最新的文件或者提交更新。

  • 分布式版本控制系统(Distributed Version Control System,简称 DVCS): 该系统并不只提取最新版本的文件快照, 而是把代码仓库完整地镜像下来,包括完整的历史记录。

  • Git就是属于DVCS这类分布式版本控制系统, 但它又不同于同类版本管理系统中的其他系统, 它的特点在于:

    • 直接记录快照,而非差异比较

      存储项目随时间改变的快照

      • 在 Git 中,每当提交更新或保存项目状态时,它基本上就会对当时的全部文件创建一个快照并保存这个快照的索引。 为了效率,如果文件没有修改,Git 不再重新存储该文件,而是只保留一个链接指向之前存储的文件。 Git 对待数据更像是一个 快照流
    • 近乎所有操作都是本地执行

      • 在 Git 中的绝大多数操作都只需要访问本地文件和资源,一般不需要来自网络上其它计算机的信息。
    • Git 保证完整性

      • Git 中所有的数据在存储前都计算校验和,然后以校验和来引用。
    • Git 一般只添加数据

      • 执行的 Git 操作,几乎只往 Git 数据库中 添加 数据

Git的三种状态

  • 已提交(committed): 表示数据已经安全地保存在本地数据库中
  • 已修改(modified) : 表示修改了文件,但还没保存到数据库中
  • 已暂存(staged): 表示对一个已修改文件的当前版本做了标记,使之包含在下次提交的快照中

基本工作流程

  1. 在工作区中修改文件
  2. 把下次要提交的更改选择性地暂存,这样只会将更改的部分添加到暂存区
  3. 提交更新,找到暂存区的文件,将快照永久性存储到 Git 目录

二、安装Git

  • Git官网

如果下载比较慢, 推荐用镜像进行下载, 这里推荐淘宝的镜像文件http://npm.taobao.org/mirrors/git-for-windows/

下载完成之后, 点击安装 :

  • Next

  • 若需要换安装路径点击Browse... , 选择好路径再点Next

  • 按照默认的, 点Next即可

  • Next

  • 这里选了VSCode作为默认编辑工具 (当然前提也是先装好VSCode才能选这个)

  • Next, 一路点Next, 其他的都按默认的来

  • 点击Install进行安装

  • 进入安装

  • 安装完后, 在Windows的开始菜单里会有一个Git文件夹, 里面包含了几个应用程序, 其中主要使用的是Git Bash

Git Bash 是Linux风格下的命令行 ;Git CMD 是Windows风格下的命令行

比如 : Linux下clear命令 可以清除之前显示的命令行 ; Windows下cls命令来清除cmd显示的命令行

参考文献 :
《Git版本控制管理 第二版》人民邮电出版社
《Pro Git》Git官网的pdf下载 ; 在线中文文档查看

未完待续…

【Git版本控制管理】Git入门介绍及Git的安装相关推荐

  1. java中git版本控制,git版本控制管理是什么?git如何实现版本控制?

    大家好,今天要跟大家讲的是关于git版本控制管理的一点小知识,git相信程序员小伙伴们都已经很熟悉了,很多项目开发都需要git,所以,git版本控制管理到底是干嘛的呢?Git又如何实现版本控制呢?下面 ...

  2. 《Git版本控制管理(第2版)》——4.3 Git在工作时的概念

    本节书摘来自异步社区<Git版本控制管理(第2版)>一书中的第4章,第4.3节,作者:[美]Jon Loeliger , Matthew McCullough著,更多章节内容可以访问云栖社 ...

  3. 【Git版本控制管理】Gitee(码云)和GitHub的使用

    远程仓库的使用 文章目录 远程仓库的使用 使用码云(Gitee) 使用GitHub 远程仓库是指托管在因特网或其他网络中的你的项目的版本库. 你可以有好几个远程仓库,通常有些仓库对你只读,有些则可以读 ...

  4. Git 版本控制管理(一)

    Git 是一个分布式版本控制工具,它的作者 Linus Torvalds 是这样给我们介绍 Git  -- The stupid content tracker(傻瓜式的内容跟踪器) 关于 Git 的 ...

  5. Git版本控制使用方法入门教程?

    考虑到CVS的一些局限性,最近和同事在公司推行Git.     其实,如果推行SVN的化,可能推行的难度会降低很多.不过lark说既然推行一个新的版本管理工具,总要花费一定的时间进行培训.部署.转换. ...

  6. Git版本控制管理——简介

    说明 在大型项目开发或者多人协作开发时,都希望可以对软件代码进行管理和追踪,以便确认开发的进度和方便问题追溯.这就需要使用到版本控制系统(VCS),比如Git就是一款很优秀的版本控制工具.如今很多项目 ...

  7. Git版本控制管理——远程版本库

    之前提到的Git的所有操作都是在本地完成的,而实际项目开发并不是一个人就可以搞定的,通常需要团队的协作,而这些协作可能又不是在同一个地区的,这就涉及到Git的分布式特性了. Git的分布式特定会涉及到 ...

  8. Git版本控制管理(二)--git配置

    在系统上安装好 Git后,还需要配置Git 环境. 每台计算机上只需要配置一次,程序升级时会保留配置信息,也可以在任何时候再次通过运行命令来修改它们. 配置文件位置 Git 自带一个 git conf ...

  9. Git版本控制管理——版本库管理

    本文主要说明如何发布Git仓库. 发布版本库 对于Git来说,服务器并不是必需的.Git更乐于与同一台机器上的同级版本库直接交换文件,而不需要某个服务器来进行代理,或通过各种不需要上级服务器的协议与不 ...

  10. Git版本控制管理——基本Git概念

    基本概念 版本库 Git版本库(repository)只是一个简单的数据库,其中包括所有用来维护与管理项目的修订版本和历史信息.而Git版本不仅会维护项目整个生命周期的完整副本,还会提供版本库本身的副 ...

最新文章

  1. MWeb for iOS 测试版介绍
  2. Hibernate Criterion
  3. Eclipse 教程
  4. @Componet @Resource Spring
  5. 特征层次分析、视觉特征语义探索(微调+预训练)
  6. kademlia java_分布式哈希表原理与实现(Python版和Java版)
  7. Spring面向切面编程
  8. Github Actions:再次改变软件开发
  9. 关于hexo与github使用过程中的问题与笔记
  10. BugkuCTF-MISC题神秘的文件
  11. 前端开发css禁止选中文本
  12. navicat的字符集和排序规则
  13. hadoop2.4的伪集群的搭建
  14. 双十一凌晨苹果发布会,新 Mac 有望搭载 ARM 架构自研芯片
  15. linux下的shell脚本(基础)
  16. DosBox 的 DOSBOX.CONF 的详细配置说
  17. ANC主动降噪理论及Matlab代码实现
  18. 计算机出现假桌面怎么解决办法,W10电脑下“AppHangXProcB1”导致桌面频繁假死如何解决?...
  19. 宝马 OR 奥迪?NONONO,还得看我Li Auto,新款六座SUV强势来袭
  20. 2021年末大盘点。IT行业那些薪资高前景好的岗位,你知道几个?

热门文章

  1. php探针 网络使用状况,PHP探针 服务器运行状况和PHP信息用的
  2. wpsa4排版_WPS2000如何快速排版
  3. javaee 与mysql留言簿_基于jsp的留言板系统-JavaEE实现留言板系统 - java项目源码
  4. csol永恒python怎样施展技能_pycharm辅助学习使用debug功能
  5. 西电计科《算法分析与设计》上机(源码+实验报告+历次作业)(渗透问题+排序算法性能比较+地图路由+文本索引)(2019级 霍红卫老师)
  6. 南邮 | 算法分析与设计实验三:回溯法
  7. 安装包制作工具 SetupFactory使用 详解
  8. Linux编译并更新内核(替换Linux内核)
  9. 饿了么微信小程序抓取
  10. ad域 禁用账号_大量AD域帐号自动被锁定