Git从入门到熟练
Git的特性
1. 分布式版本控制
- 集中式VS分布式


保存更新时的文件快照而非差异
(快照 :是文件系统中的概念或者技术;来自照相领域的概念,是指特定时间点的一个状态)
其他系统在每个版本中记录着各个文件的具体差异

Git 保存每次更新时的文件快照,Git 并不保存这些前后变化的差异数据。实际上,Git 更像是把变化的文件做快照后,记录在一个微型的文件系统中。每次提交更新时,它会纵览所有文件的指纹信息并对文件做快照,然后保存一个指向这次快照的索引。对于没有发生变化的文件,Git 不会再次保存,只做一个链接指向上次保存的快照来提高性能。Git 更像是一个小型的文件系统。

- Git Patch 应用 打补丁,不等同于快照
- git format-patch 用法
基于上几次内容打包
git format-patch HEAD^ 有几个^就会打几个patch,从最近一次打起
git format-patch HEAD^^ 最近的二个patch内容
以下代码作用同上
git format-patch -1
git format-patch -2
应用patch
git am -s < 0001-minor-fix.patch
Reference
- Git初探http://www.samirchen.com/git-commands/
- 快照技术详解http://blog.csdn.net/sky1203850702/article/details/46830851
- Patch 使用http://blog.csdn.net/xzongyuan/article/details/9425739
4.https://www.jianshu.com/p/814fb6606734
Git从入门到熟练的更多相关文章
- Git 从入门到熟练|不敢说精通
前言 如果有一定版本管理软件基础或使用过 svn 的你,这篇 git 的文章应该是最适合你的.作者也是从 svn 过来,从开始的觉得 git 麻烦,到最后还是感觉 git 是最好用的版本控制软件. 虽 ...
- GIT 从入门到放弃大整理
跟着廖雪峰学 GIT http://www.liaoxuefeng.com/wiki/0013739516305929606dd18361248578c67b8067c8c017b000 GUI f ...
- 第三章 Git的入门 - 读书笔记
Android驱动月考3 第三章 Git的入门 - 读书笔记 对于Github,这是全世界最大的开源平台,你可以把你做的项目在这里开源,把你发现的一些新技术在这里开源,向全世界的开发者们分享,大家都彼 ...
- git简单入门
git简单入门 标签(空格分隔): git git是作为程序员必备的技能.在这里就不去介绍版本控制和git产生的历史了. 首先看看常用的git命令: git init git add git comm ...
- Android系统移植与驱动开发--第三章 Git使用入门及在学习中有感
第三章 Git使用入门 使用Git的目的是减少各种版本的Linux的压缩大小,提供源代码在Linux上进行编译. 在这一个章节中,其实就是关键步骤的操作,虽然Git与我们学习的android没有很大的 ...
- 让 Python 带你进入开源的世界——Git 从入门到与他人协作开发
让 Python 带你进入开源的世界--Git 从入门到与他人协作开发 我认为开源社区中有很多优秀的资源,并且可以帮助进阶中的程序员提高编程能力和水平.所以,我发起了<HelloGitHub&g ...
- Git快速入门进阶篇
本文接着Git快速入门篇,继续探讨Git在管理项目中的一些应用. 远程仓库的使用 查看远程仓库 查看你已经配置的远程仓库服务器,可以运行 git remote 命令.指定选项 -v,会显示需要读写远程 ...
- git快速入门 push/clone/reset/merge/切换分支全都有
本文介绍git快速入门,从安装/创建init / 发布push/版本回退reset / branch分支切换/合并分支merge 这些基本的操作都有涉及,方便新人快速入手,有需要的朋友mark一下.首 ...
- Git 快速入门--Git 基础
Git 快速入门 Git 基础 那么,简单地说,Git 究竟是怎样的一个系统呢? 请注意接下来的内容非常重要,若你理解了 Git 的思想和基本工作原理,用起来就会知其所以然,游刃有余. 在开始学习 G ...
随机推荐
- Python基础学习之序列(2)
通用序列操作 所有序列类型都可以进行某些特定的操作.这些操作包括:索引(indexing).分片(sliceing).加(adding).乖(multiplying)以及检查某个元素是否属于序列的成员 ...
- ARM实验3 ——串口实验
uart串口实验 实验内容: 编写UART模块程序,通过串口将信息打印到终端. 实验目的: 熟悉开发环境的使用. 掌握exynos4412处理器的UART功能. 实验平台: FS4412开发板,ecl ...
- 官方发布PHP语法规范
PHP语言已经存在了超过20年,显然是世界上最流行的编程语言之一.PHP绝对是互联网服务器端web编程的通用语. 虽然有广泛的user-documentation,PHP语言总是错过语言规范.这并不是 ...
- python doctest测试
title: Python doctest测试 tags: Python --- doctest测试 python 提供了REPL(read-eval-print loop,读取.求值.输出的循环) ...
- sql的where条件转换成mongdb筛选条件
解析字符串 filterModel1 and filterModel2 and (filterModel3 or filterModel4) 1.转换成mongo的筛选条件 /// <summa ...
- js字符串内容包含单引号‘’和双引号“”怎么办?
如果javascript中的字符串包含单引号和双引号,可以用转义字符来标识 'I\'m \"OK\"!'; 表示的字符串内容是:I'm "OK"! 转义字符\可 ...
- django ORM单表操作
1.ORM介绍 ORM是“对象-关系-映射”的简称 映射关系: mysql---------Python 表名----------类名 字段----------属性 表记录--------实例化对象 ...
- JS实现Promise原理
promise是用来解决Js中的异步问题的,js中所有的异步可从callback → promise → generator + co = async + await 其实所有的都是callback的 ...
- Mybatis基础入门学习
Mybatis基础入门学习 mybatis架构分析 搭建测试mybatis架构 )下载并导入mybatis3.2.7.jar(架构),mysql-connector-java-5.1.7-bin.ja ...
- 谷歌浏览器如何调试JS
平常在开发过程中,经常会接触到前端页面.那么对于js的调试那可是家常便饭,谷歌浏览器是常用来调试JS代码的工具,本文主要介绍如何利用谷歌浏览器来调试JS代码,协助我们进行开发工作,加快开发效率. 1. ...