版本管理工具不但可以备份而且还能记录版本,也就是同一个东西不同时期的状态同时可以跟踪追溯。
版本管理工具由CVS、SVN、Git、GitHub。

最早的版本管理工具CVS,因为多人开发项目导致工作很难协调所以就实现了CVS工具。

产品 特点
CVS 最早的版本管理工具,集中式管理,中心服务器,每个人都存放。
SVN 一个更好的集中式版本管理工具
Git 分布式的,由Linux开源社区诞生的。
Github 托管网站,一个项目可以有一个网站,项目代码可以托管到这个网站

Github和Gitlab的区别:Gitlab拥有Github的一切功能而且还有更多特性。用户界面丰富。Github可以理解为一个网站为用户提供GIT仓储,而Gitlab是基于GIT实现的项目管理软件,我们自己可以在公司内部搭建Gitlab服务。

GIT和SVN的区别:SVN等其他传统版本管理工具保存的是每个版本的变化

Git保存的是快照而不是结果

GIT中所有数据在存储前都进行数据校验然后以校验和来引用。在GIT数据库中保存的信息都是以这种SHA-1哈希值来保存的而不是文件名称。

状态  
Commited 已提交表示数据已经按照保存到本地数据库中
Modified 表示修改了文件但是还没有提交到数据库中
Staged 表示对一个已修改的文件的当前版本做了标记。

由上面三个概念引入的三个区域

  • GIT仓库:是GIT用来保存数据的地方
  • 工作目录:是对某个项目独立拉取出来的内容,放在你的本地
  • 暂存区:是一个文件,保存下次将要提交的列表信息

流程如下:

  • 从仓库拉取到工作区
  • 在工作区修改文件
  • 暂存文件,也就是对应的git add操作
  • 本地提交到本地仓库
  • PUSH到远程仓库

参考文档

Git简易指南

版本管理工具Git(一)简要介绍的更多相关文章

  1. 版本管理工具Git(1)带你认识git

    简介 本篇将带领大家认识,git.github,让大家对git有基本的认识:下面将持续更新几篇文章来介绍git,见git导航: 下一篇中将讲解git的安装及使用: Git系列导航 版本管理工具Git( ...

  2. linux系统下使用流行的版本管理工具 Git

    前几天被版本管理困扰了好久,主要是因为 没法回到之前的版本,新版本又出了问题真的很尴尬. 终于决定使用目前网上很火的版本管理工具-------Git 历史啥的就不说了,说些有用的. 我用的是oschi ...

  3. 版本管理工具Git(2)git的安装及使用

    下载安装git 官方下载地址:https://git-scm.com/download/win 这里以windows为例,选择正确的版本: 验证是否安装成功,右键菜单中会出现如下菜单: Git工作流程 ...

  4. 版本管理工具Git(2)git的使用

    上一篇带大家认识了Git,在本篇中将讲解Git的安装及使用: Git系列导航 版本管理工具Git(1)带你认识git 版本管理工具Git(2)git的安装及使用 版本管理工具Git(3)VS下如何使用 ...

  5. 版本管理工具Git(3)VS2013下如何使用git

    Git系列导航 版本管理工具Git(1)带你认识git 版本管理工具Git(2)git的安装及使用 版本管理工具Git(3)VS下如何使用git VS下创建项目 vs中新建项目MyGitTest201 ...

  6. 版本管理工具git与svn简介

    版本管理工具 版本管理工具简介 常见版本管理工具 cvs(Concurrent Versions System) vss(Visual SourceSafe) svn 常用的版本管理工具 git 流行 ...

  7. Studio之版本管理工具Git (图文教程)

    目前业界主流的版本管理工具主要是 svn/git.svn是1种集中式的代码管理工具,而git是1种散布式的代码管理工具,广受极客的爱好.而基于git的github更是全宇宙码农的提高逼格,深究技术的必 ...

  8. 谈谈分布式版本管理工具Git

    一.主流的版本管理工具 目前在企业中比较主流的版本管理工具有:GIT.SVN.CVS等等. 二.什么是Git? Git是一款免费.开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目.是 L ...

  9. git版本管理工具-git的概述

    什么是git Git是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目的一种工具 Git 与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不 ...

随机推荐

  1. VS 2013Ultimate 开发过程中遇到的问题——listbox的隐藏问题,combobox.textchanged的中文问题

    最近项目有需求,就是把一个combobox让它可以根据用户输入的汉字就行模糊查询出匹配的下拉框内容,很简单,是吧 但是!!!在开发中真是遇到了不少问题呢. 一.实现流程 1)我的实现思维是这样的,先把 ...

  2. 蓝桥杯刷题,第四界省赛B组

    题头,本内容的题目和部分内容均来自博客:https://blog.csdn.net/ryo_218/article/details/79704030 ,在此感谢. 1. 题目标题:高斯日记大数学家高斯 ...

  3. Fio测试工具参数

    以随机读为例:fio -ioengine=libaio -group_reporting -direct=1 -name=testsda -numjobs=1 --time_based --runti ...

  4. Linux一键安装宝塔控制面板

    Linux一键安装宝塔的命令行 yum install -y wget && wget -O install.sh http://download.bt.cn/install/inst ...

  5. thinkphp 单图上传组建成数组然后追加到一个字段

    //上传的数组字段 $note1 = input('note1'); $note2 = input('note2'); $note3 = input('note3'); $note4 = input( ...

  6. Git Bash for Windows add ssh key时报Could not open a connection to your authentication agent.

    $ ssh-add id_rsa_bitbucketCould not open a connection to your authentication agent. 运行: $ ssh-agent ...

  7. Java 短信发送

    package com.test; import org.apache.commons.httpclient.Header;import org.apache.commons.httpclient.H ...

  8. sqlite3数据库教程

    1.sqlite3安装(命令行): sudo apt-get install sqlite3 2.图形界面查看工具安装: sudo apt-get install sqlitebrowser 3.命令 ...

  9. ABP入门系列(4)——创建应用服务

    ABP入门系列目录--学习Abp框架之实操演练 一.解释下应用服务层 应用服务用于将领域(业务)逻辑暴露给展现层.展现层通过传入DTO(数据传输对象)参数来调用应用服务,而应用服务通过领域对象来执行相 ...

  10. 【分享】【原创开源应用第4期】给ili9488,RA8875类显示屏的emWin底层增加DMA加速方案

    说明:1.emWin底层中最重要的一个优化就是16bpp绘制,特此为其增加DMA加速,已经支持RA8875和ili9488.2.使用中务必将emWin任务设置为除了空闲任务,统计任务以外的最低优先级, ...