Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理。

Git的历史
Git是Linux的创始人Linus Tatvatds开发的开源和免费的版本管理系统,也
称源代码管理系统(Source Code Manage,SCM). 它的官方网站是
Http://git-scm.com

2005年的时候Linux核心开发小组和当时的他们的版本管理系统提供商产
生分歧。环顾世界,没有一个好的版本管理器。。于是Linus 自己动手开发一个!这就是
的版本管理系统。
Ulm对这个版本控制开发时候的思考;
Speed 速度(用C写的)
Simple design 简单设计
Fully dTtnbuted
Able to handle large projects like the Linux kernel efficiently (speed and data size)

Git与CVS的区别

  • 分支更快、更容易。
  • 支持离线工作;本地提交可以稍后提交到服务器上。
  • Git 提交都是原子的,且是整个项目范围的,而不像 CVS 中一样是对每个文件的。
  • Git 中的每个工作树都包含一个具有完整项目历史的仓库。
  • 没有哪一个 Git 仓库会天生比其他仓库更重要。

迁移到 Git 的八个理由

 

GIT跟SVN一样有自己的集中式版本库或服务器。但,GIT更倾向于被使用于分布式模式,也就是每个开发人员从中心版本库/服务器上chect out代码后会在自己的机器上克隆一个自己的版本库。可以这样说,如果你被困在一个不能连接网络的地方时,就像在飞机上,地下室,电梯里等,你仍然能够提交文件,查看历史版本记录,创建项目分支,等。对一些人来说,这好像没多大用处,但当你突然遇到没有网络的环境时,这个将解决你的大麻烦。

Git架构原理》》基本概念》》快照而不是比不同

。。它是比每个版本的增加的改动, 叫增量,对比增量。

Git架构原理》》基本概念》》 Git文件的三个状态

Git架构原理》》基本概念》》 生命周期

blessed (remote) repository 远程仓库
local repository 本地仓库
stage area 临时区域
work area 工作区域

Git 安装教程 http://book.51cto.com/art/201107/278836.htm

Git 命令

git config --help      帮助文档命令

mkdir gittest1       新建一个文件夹

cd gittest1     打开该文件夹

git init            初始化

echo "hello">>hello   创建了一个名为"hello"的文件

git add .      添加

git commit hello -m "init hello" 初始化

cd.. 打开上一级默认目录

git clone git://github.com/git/hello-world.git 下载远程代码仓库到 默认目录下

cd hello-word 打开该下载的文件夹

git remote 显示远程的版本仓库的名字 一般叫 origin原始的
git remote -v 可以看到远程仓库具体的地址

 文件就 存储在这种index二进制文件中

1,了解系统环境变量
/etc/gitconfig
.gitconfig
2,设置身份
$git config --global user.name "lysine"
$git config --global user.email 272803220@qq.com

3,设置编辑器(可选)
$git config -global core.editor emacs

4,设置你的比较工具(可选)
$git config -global merge.tool vimdiff

5,检查你的配置(可选)
$git config --list

6,帮助
$git help <verb>
$git<verb> -help

工具推荐:

Repo  下载Android源码之前,先要安装其构建工具Repo来初始化源码。Repo是Android用来辅助Git工作的一个工具。

Sundy笔记__Git版本控制相关推荐

  1. 【Git\GitHub\GitLab学习笔记】版本控制 Git 视频教程全集(62P)| 6 小时从入门到精通(P27-P41)

    目录 P27-Git基本原理-Hash算法简介 P28-GIt版本数据管理机制 - P33-为了测试远程交互初始化本地库 P34-创建远程仓库 P35-在本地创建远程库地址别名 P40-协同开发时冲突 ...

  2. 【山外笔记-工具框架】SVN版本控制系统

    [山外笔记-框架工具]SVN版本控制系统 学习资料: 1.本文打印版下载地址:[山外笔记-框架工具笔记]SVN版本控制工具-打印版.pdf 2.SVN和TortoiseSVN在线中文文档:http:/ ...

  3. 猿创征文 | Git的良心教程

    目录 一.Git的下载与安装 1.Git的下载 2.Git的安装 除了自定义路径外,其他的无脑下一步 安装完毕 二.Git的使用 1.基础的Linux命令 2.Git的必要配置 三.Git的工作原理 ...

  4. 谷歌地图 marker 更改经纬度

    网上找到的一个案例 先 设置 map为null <script type="text/javascript" src="http://maps.googleapis ...

  5. 美团研发岗笔试真题练习(选择题)

    一. 设栈S和队列Q的初始状态均为空,元素a,b,c,d,e,f,g依次进入栈S.若每个元素出栈后立即进入队列Q,且7个元素出队的顺序是b,d,c,f,e,a,g,则栈S的容量至少是? 答: 3个. ...

  6. 笔记47-徐 数据库引擎中基于行版本控制的隔离级别

    笔记47-徐 数据库引擎中基于行版本控制的隔离级别 MSSQL隔离级别 READ UNCOMMITTED(未提交读),相当于(NOLOCK) READ COMMITTED(已提交读,默认) REPEA ...

  7. Git笔记(1) 版本控制

    Git笔记(1) 版本控制 1. 关于版本控制 2. 本地版本控制系统 3. 集中式版本控制系统 4. 分布式版本控制系统 1. 关于版本控制 版本控制是一种记录一个或若干 文件内容变化,以便将来 查 ...

  8. C#笔记17 DataTime类型、断言、internal关键字、GUID、Excel操作、正则表达式、访问剪贴板、设计模式、版本控制

    文章目录 DataTime 断言Debug.Assert(bool); internal关键字 GUID 访问Excel 正则表达式 访问剪切板 设计模式 参数化配置(避免硬编码) 其他介绍 Data ...

  9. Elasticsearch笔记三之版本控制和插件

    转载来源 :https://blog.csdn.net/ty4315/article/details/52264235 版本控制 1:关系型数据库使用的是悲观锁,数据被读取后就被锁定其他的线程就无法对 ...

最新文章

  1. 如何合并两个Docker 镜像
  2. 电单车拉力赛的调试情况汇集
  3. openfire安装配置完全教程
  4. 使用js代码将HTML Table导出为Excel
  5. 一寸照纯红色底图片_和记场下载
  6. gdal 压缩tif_Python | GDAL处理影像
  7. pipline 简单是使用
  8. React 编程思想 正反向数据流(单向数据流) 为了好理解我才叫正反向
  9. 幸亏有这本623页的微服务框架实战笔记,面试篇
  10. sql数据库去重语法_浅谈sql数据库去重_MySQL
  11. 项目管理之我见:程序开发步骤
  12. 拓端tecdat|matlab贝叶斯隐马尔可夫hmm模型实现
  13. 经典SQL面试10题(附答案)
  14. python解二元方程组_Python 解线性方程组
  15. rtl8188ce无线网卡linux驱动,rtl8188ce无线模块驱动移植到arm Linux平台
  16. 驱动备份及还原命令-手记
  17. HTML超链接引用到地图,HTML超链接
  18. Nginx实现虚拟主机
  19. n以内的最多因子数的数 n=1e18
  20. DB2 PC服务器本地磁盘集群部署模式简介

热门文章

  1. 管家显示服务器维修,服务器常见的11种基本故障及排查方法汇总介绍
  2. Akka 指南 之「跨多个数据中心集群」
  3. 【Nacos】Nacos配置中心的使用与SpringCloud整合
  4. 智慧用电管理系统——从源头避免安全隐患的产生
  5. 苏黎世新研究:人工智能探测暗物质【智能快讯】
  6. 与chatGPT神聊,引领你深入浅出系统调用
  7. js的深层克隆和浅层克隆代码和理解
  8. gee学习笔记 第三天
  9. 苹果企业证书_苹果企业证书过期
  10. 微信小游戏的技术5要点