git特点:

1)分布式
2)存储快照而非差异
3)本地有完全的版本库,几乎所有操作都在本地
4)有内在的一致性,SHA1
5)优秀的分支管理
6)支持各种协同模式
7)开源,有一些第三方软件可整合使用,几乎所有操作都是 与CVS/SVN,Git 的优势 1)支持离线开发,离线Repository(仓库)
2)强大的分支功能,适合多个独立开发者协作
3)速度快

git的常用命令小结:

由git +(以下参数)组合
config          全局配置参数相关
init 创建一个新的git版本库或初始化一个已存在的版本库(生产中慎重操作已存在的版本库)
add 添加文件内容至仓库索引
diff 显示提交之间,提交和工作区之间的差异
status 显示工作区状态
commit 记录变更(提交)到版本库(注意:需先add再commit,git才会跟踪记录)
log 显示提交日志(可以看到commit_id等信息 --pretty=oneline过滤掉无用信息)
reflog 简要显示提交日志(简单的commit_id信息)
reset 重置当前HEAD到指定状态(HEAD^ 为回滚至上一次版本)
rm 从工作区和索引中删除文件
checkout 检出一个分支或路径到工作区
branch 列出,创建或删除分支
clone 克隆一个版本库到一个新目录
bisect 通过二分法查找定位引入bug 的变更
fetch 从另外一个版本库下载对象和引用
merge 合并2个或多个开发历史
rebase 本地提交转移至更新后的上游分支中
mv 移动或重命名一个文件,目录或符号链接
pull 获取并合并另外的版本库或一个本地分支
push 更新远程引用和相关的对象
show 显示各种类型的对象
tag 创建,列出,删除或校验一个GPG签名的tag对象
grep 输出和模式匹配的行

git中的工作区(working dir),提交区/暂存区(stage/index),版本库(repository)的概念和联系

git工作流:

git 实际操作图解:

当你执行commit后,暂存区的内容就没有了

git 回滚原理图:

git知识简单小结的更多相关文章

  1. 【android Studio】零git知识、零脚本命令,即刻体验git版本管理魅力!

    git的优点就不去多说了.阻碍咱新手体验它的唯一问题就是门槛太高,脚本看着像天书, 本文主要阐述的,就是如何在android studio上,也能像tfs那样,非常简单的操作,就能使用git进行版本管 ...

  2. Git知识总览(三) 分支的创建、删除、切换、合并以及冲突解决

    前两篇博客集中的聊了git的一些常用命令,具体请参见<Git知识总览(一) 从 git clone 和 git status 谈起>.<Git知识总览(二) git常用命令概览> ...

  3. Git知识总览(四) git分支管理之rebase 以及 cherry-pick相关操作

    上篇博客聊了<Git知识总览(三) 分支的创建.删除.切换.合并以及冲突解决>,本篇博客我们主要来看一下 rebase 变基相关的操作.rebase 操作和 merge 操作最终都可以达到 ...

  4. Git操作简单入门及相关命令

    说明:本文内容主要来自文末参考链接内容,此文仅作学习记录.如有转载,请到文末参考链接处. 1 基本概念理解 1.1 Git介绍 Git是分布式版本控制系统. 集中式VS分布式,SVN VS Git. ...

  5. 前台vue的使用简单小结

    前台vue的使用简单小结 本项目要求:安装有node.js 6.0以及以上安装npm使用vue.js官方安装方法初始化项目npm install安装VueResurce:npm install vue ...

  6. springboot微服务的简单小结

    springboot微服务的简单小结 近来公司用springboot微服务,所以小结一下. 基础: 什么是SpingBoot微服务? 如何创建SpringBoot微服务? 如何管理和完善SpringB ...

  7. git帮助和小结

    获取帮助 想了解 Git 的各式工具该怎么用,可以阅读它们的使用帮助,方法有三: $ git help <verb> $ git <verb> --help $ man git ...

  8. linux下git的简单运用

    linux下git的简单运用 windows下也有git,是git公司出的bash,基本上模拟了linux下命令行.许多常用的命令和linux下操作一样.也就是说,windows下的git命令操作和l ...

  9. git 的简单使用方法

    git 的简单使用方法1. 服务器 安装完成2. ssh 中的账号创建完成3. 创建 ssh 账号,会在 ssh 的安装目录下的home 目录里面,多了用户家目录4. 进入该目录 ,创建一个新的文件夹 ...

随机推荐

  1. 理解setTimeout()

    之前在网上看了很多关于setTimeout的文章,但我感觉都只是点到为止,并没有较深入的去剖析,也可能是我脑袋瓜笨,不容易被点解.后面看了<你不知道的javascript-上卷>一书,决定 ...

  2. java 运行和编译

    一.编译->运行 1.编译 javac  文件名.java  生成 文件名.class 2.运行 java 文件名 注意:正在运行的是 文件名.class 因此:修改源文件后,要先编译,再运行 ...

  3. CentOS7 搭建Fabric 1.0

    1.环境搭建 1.1 go的按装及配置 1.1.1下载go压缩包 ​ wget https://dl.google.com/go/go1.9.2.linux-amd64.tar.gz 1.1.2 解压 ...

  4. [LOJ#2017][轮廓线DP][KMP]「SCOI2016」围棋

    题目传送门 看到 \(m\le 12\) 和 \(c\le 6\) ,容易想到状压 DP 考虑转化成 \(3^{nm}\) 减去不合法的方案数,轮廓线 DP :\(f[i][j][S][k][h]\) ...

  5. PHP——常量

    一.什么是常量 常量可以理解为值不变的量(如圆周率)或者是常量值被定义后,在脚本的其他任何地方都不可以被改变.PHP中的常量分为自定义常量和系统常量,自定义常量是根据我们开发的需要,而定义的常量,它通 ...

  6. Spring Cloud学习之-什么是Spring Cloud?

    SpringCloud 什么是微服务? 要想学习微服务,首先需要知道什么是微服务?为什么会有微服务?相信看完架构的发展史读者就会明白 架构发展史 单体应用架构 如图所示:将所有的模块,所有内容(页面. ...

  7. Ubuntu中部署Django项目的配置与链接MySQL

    Django的简介 MVT模式的介绍创建项目的虚拟环境 本次使用的是pip安装 一.更新 sudo apt update 二.安装pip sudo apt install python3-pip 三. ...

  8. MVC 记录

    ASP.NET MVC框架提供了一个帮助我们构造Html元素的类:TagBuilder ps url cnblogs.com/yibinboy/articles/5187682.html HttpRu ...

  9. Lobooi 结对作业(24235+24229)

    结队作业 GitHub项目地址 https://github.com/Lobooi/PairProgramming.git 伙伴博客地址 https://www.cnblogs.com/lanti/p ...

  10. 19_07_08校内训练[grid]

    题意 现有n*m的长方形网格,每个格子中写着一个数,并构成了[0,n*m)的排列.每次可以将一行循环平移x格,也可以将一列循环平移x格.给出初始状态,给出一个到达给定状态的方案.n*m<=100 ...