设置签名:

​ 用户名:tom

​ Email地址:goodMorning@atguigu.com

​ git config user.name tom_pro

​ git config user.email goodMorning@atguigu

作用:区分不同开发人员的身份,无其他作用
辨析:这里设置的签名和登录远程库(代码托管中心)的账号、密码没有任何关系
命令:(就近原则:二者都没有不允许)
项目级别/仓库级别:仅在当前本地库范围内有效
系统级别:登录当前操作系统的用户范围有效
--local / --global /
查看项目配置保存的位置:cat .git/config

显示日志:

​ git log

​ git log --pretty=oneline

​ git log --oneling 备注:只显示当前版本之前的版本,不显示之后的版本

​ git reflog 备注:HEAD@{移动到当前版本需要的步数}

​ 多屏显示方式:空格向下翻页、b向上翻页、q退出

版本前进后退:

​ 本质:HEAD

​ 基于索引值操作(最好用)

git reset --hard 局部索引值

​ 使用^符号(只能后退)

​ git reset --hard HEAD^ 向后退一个版本

​ git reset --hard HEAD^^^ 向后退三个版本

​ 使用~符号

git reset --hard HEAD~3

reset的三个参数对比:
--soft:
仅仅在本地库移动HEAD指针 --mixed:
在本地库移动HEAD指针
重置暂存区
--hard:
在本地库移动HEAD指针
重置暂存区
重置工作区

比较文件差异:

​ git diff 文件名

​ 将工作区中的文件和暂存区进行比较

​ git diff 本地库中历史版本 文件名

​ 将工作区中的文件和本地库历史记录比较

分支管理:

分支的好处:

分支操作:

​ 查看分支:git branche -v

​ 创建分支:git branch 分支名称

​ 切换分支:git checkout 分支名称

​ 合并分支:1)切换到主分支上 git checkout 被合并分支名,增加新内容

​ 2)执行merge命令 git merge 有新内容分支名

解决冲突:

Git基本原理

快照:

每一个文件节点都有一个hash值

对各个版本存储的信息

创建分支等于创建一个指针

分支的切换:HEAD指向的分支名称切换了

master分支变化了

Git简单操作及原理的更多相关文章

  1. git学习笔记03-本地git常用操作及原理-文件增删改

    1.查看git状态 git status  这个可以告诉我们对git做了哪些操,比如增删改 2.既然我们修改了东西,有的时候想看看修改了什么,毕竟我们的记忆力并不如电脑 git diff 文件名 (默 ...

  2. 在win7系统下使用TortoiseGit(乌龟git)简单操作Git@OSC

    非常感谢OSC提供了这么好的一个国内的免费的git托管平台.这里简单说下TortoiseGit操作的流程.很傻瓜了 首先你要准备两个软件,分别是msysgit和tortoisegit,乌龟还可以在下载 ...

  3. GIT简单操作

    以下只是简单的bash的操作命令,个人比较喜欢用gui 打开 git bash here git clone https://github.com/自己的名字/trunk git checkout + ...

  4. GitHub Git 简单操作

    一.使用git更新GitHub 准备:本地已经安装好git 登录GitHub,选择好仓库,点击 Clone or download 拷贝地址 这里的地址为:https://github.com/edw ...

  5. Eclipse安装Git插件及简单操作

    0. 前言 说一件事,说起来也是好笑,工作三年半了,还没接触到团队开发,都是一个人小打小闹.因此连Git都没有使用过.感觉好Low的,这一篇,简单讲一下,Eclipse配置Git插件,并提交代码到Gi ...

  6. 小丁带你走进git世界一-git简单配置

    小丁带你走进git世界一-git简单配置 1.github的简单配置 配置提交代码的信息,例如是谁提交的代码之类的. git config  –global user.name BattleHeaer ...

  7. GitHub学习心得之 简单操作

    作者:枫雪庭 出处:http://www.cnblogs.com/FengXueTing-px/ 欢迎转载 前言 本文对Github的基本操作进行了总结, 主要基于以下文章: http://gitre ...

  8. Git远程操作详解

    Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多优势,其中之一就是远程操作非常简便.本文详细介绍5个Git命令,它们的概念和用法,理解了这些内容,你就会完全掌握Gi ...

  9. [转]Git远程操作详解

    原文:http://www.ruanyifeng.com/blog/2014/06/git_remote.html Git是目前最流行的版本管理系统,学会Git几乎成了开发者的必备技能. Git有很多 ...

随机推荐

  1. Mysql的join算法

    本文转载自Mysql的join算法 导语 在Mysql中,使用Nested-Loop Join的算法思想去优化join,Nested-Loop Join翻译成中文则是"嵌套循环连接" ...

  2. springCloud中的注册中心Nacos

    springCloud中的注册中心Nacos 三个模块: 1.注册中心 2.服务提供者(生产者) 提供服务 3.服务消费者(消费者)调用服务 流程:消费者和生产者都要向注册中心注册,注册的是二者中服务 ...

  3. CentOS7安装ElasticSearch7.9.2

    1:下载 wget https://artifacts.elastic.co/downloads/elasticsearch/elasticsearch-7.9.2-linux-x86_64.tar. ...

  4. SpringBoot2.1中添加过滤器配置

    1:构造一个实现 Filter 接口的过滤器,并在类上添加@component注释: notice1:若不添加,则需在spring中注入该bean,不然会报错. package com.dev.fil ...

  5. RabbitMQ-RPC版主机管理程序

    一.作业需求 1.可以对指定机器异步的执行多个命令 例子: 请输入操作指令>>>:run ipconfig --host 127.0.0.0 in the call     tack ...

  6. DNS Rebinding漏洞原理

    目录 SSRF过滤器设计 背景知识 DNS TTL 公网DNS服务器 DNS重绑定 自建DNS服务器 利用步骤图解 实战中的注意事项 防御 参考 DNS Rebinding 广泛用于绕过同源策略.SS ...

  7. k8s自定义controller设计与实现

    k8s自定义controller设计与实现 创建CRD 登录可以执行kubectl命令的机器,创建student.yaml apiVersion: apiextensions.k8s.io/v1bet ...

  8. HDOJ-1043 Eight(八数码问题+双向bfs+高效记录路径+康拓展开)

    bfs搜索加记录路径 HDOJ-1043 主要思路就是使用双向广度优先搜索,找最短路径.然后记录路径,找到结果是打印出来. 使用康拓序列来来实现状态的映射. 打印路径推荐使用vector最后需要使用a ...

  9. POJ-3159(差分约束+Dijikstra算法+Vector优化+向前星优化+java快速输入输出)

    Candies POJ-3159 这里是图论的一个应用,也就是差分约束.通过差分约束变换出一个图,再使用Dijikstra算法的链表优化形式而不是vector形式(否则超时). #include< ...

  10. 在windows 下查看ip 地址和 在ubundu 下查看IP地址

    在windows 下查看ip 地址和 在ubundu 下查看IP地址 1.在windows 下查看 IP地址:ipconfig 2.在 ubundu 下查看IP地址:ifconfig