最近开始学习使用一下git

Git和SVN的区别:SVN是集中式版本控制的代表 Git是分布式版本控制中心的代表

Git简易图

Git和GitHub的区别:

GitHub是Git的一个代码托管中心

在局域网下:GitLab服务器

外网环境下:GitHub、码云

在将要存储git的目录下右键进入Git Bash Here.在操作窗口输入 git init命令

在目录下有一个.git文件 里面内容如下

然后设置git的签名,用户名和邮箱。用于区分不同开发人员的身份。

签名分为

项目级别(仓库级别)  :仅在本地库范围有效    git config user.name jiy_pro        git config user.email jiy@qq.com

系统用户级别 :登陆当前操作系统的用户范围     git config --global user.name jiy   git config--global user.email jiy@qq.com

在.cat里面的config文件中查看设置的项目级别的签名 就可以看到设置的签名

下面设置系统用户级别的签名

去哪里查看系统用户级别的签名呢  先来到家目录 cd ~

然后进入 .gitconfig文件 查看设置的系统用户级别签名

git status 来查看当前git状态   没有什么已经提交的文件 也没有任何可提交的文件

vim 创建一个文件然后查看状态

使用 git add命令 将文件添加到暂存区

添加完之后 再来看 git status 文件被添加到暂存区等待提交

使用 git rm --cached hello.txt 将文件从暂存区移除

重新添加到暂存区 然后 git commit进行提交  进入到添加提交消息页面(git commit -m "my first commit" hello.txt  命令可直接修改不用进入下页面)

用 :set nu显示行号  证明在vim编辑器里面 然后添加注释信息 保存退出

再来查看 git status

git 查看历史记录

git log 

 

git log --pretty=oneline

 

git log --oneline【只显示当前版本之前的历史记录】

git reflog【显示所有的历史记录】

git进行版本的前进和后退操作

1 基于索引值操作【推荐】

再次查看历史信息 已经成功切换

2 使用 符号【只能后退】 ^符号的个数代表后退的次数

3 使用 ~ 符号【~后面带的数字代表要回退的次数】

git help [file] 查看帮助文档   在本地有一个帮助文档

通过文档可以看出reset三个参数

--soft

仅仅在本地库移动HEAD指针

--mixed

在本地库移动HEAD指针

重置缓存区

--hard

在本地库移动HEAD指针

重置缓存区

重置工作区

找回删除文件

前提:在删除文件前把文件提交到本地库。

通过切换本地库的历史版本恢复文件(git reset --hard [版本号]

当删除操作提交到本地库 本地库指针位置切换到删除之前的版本

当前删除操作未提交到本地库则本地库指针位置切换到当前位置【git reset --hard HEAD

比较文件  :git diff 【文件名】

一般情况下 git diff命令是将工作区和暂存区的文件进行比较

git diff HEAD 【文件名】是对工作区和本地库的文件进行比较。

也可以直接使用git diff对比修改过的所有文件

Git学习之路(一)相关推荐

  1. Git学习之路(6)- 分支操作

    ▓▓▓▓▓▓ 大致介绍 几乎所有的版本控制系统都会支持分支操作,分支可以让你在不影响开发主线的情况下,随心所欲的实现你的想法,但是在大多数的版本控制系统中,这个过程的效率是非常低的.就比如我在没有学习 ...

  2. Git 学习之路-1

    概述 因工作的需要以及个人对Git 版本控制软件强大功能的兴趣,开始通过蒋鑫老师编著的Git 权威指南一书进行学习,并在学习过程中整理如下的学习笔记. Git 是一款分布式版本控制系统,有别于CVS和 ...

  3. Docker学习之路 用commit命令创建镜像

    Docker学习之路 用commit命令创建镜像 docker 74k 次阅读 · 读完需要 7 分钟 假期快要结束了,干点正事,接着Docker的学习. 构建镜像 构建镜像的两种方法: 使用dock ...

  4. java学习之路目录(已完结)

    java学习之路目录(持续更新中-) 第一阶段 javaSE(完结) 序号 标题 内容 001 java初识 java语言特点.体系结构.运行机制 002 java SE基础语法 注释.关键字.变量. ...

  5. Python学习之路9☞面向对象的程序设计

    Python学习之路9☞面向对象的程序设计 一 面向对象的程序设计的由来 见概述:http://www.cnblogs.com/linhaifeng/articles/6428835.html 二 什 ...

  6. unity学习之路—飞机大战

    unity学习之路-飞机大战 这是我第一次进行博客写作,准备把前段时间写的<飞机大战>游戏的制作过程写出来,一方面为自己知识的梳理,另一方面是为分享,当然,前几次写出来的结果肯定很烂,只会 ...

  7. Git自学之路(二)- Git初始配置和基本使用

    Git自学之路- Git初始配置和基本使用 在学习完本文之后,你应该能够配置并初始化一个仓库(repository).开始或停止跟踪(track)文件.暂存(stage)或提交(commit)更改. ...

  8. Git 学习笔记:6 GitHub

    Git 学习笔记:6 GitHub 账户的 创建和配置 SSH访问 头像 邮件地址 两步验证 对项目做贡献 派生(fork)项目 GitHub 流程 创建合并请求 利用合并请求 合并请求的进阶用法 将 ...

  9. 《我的PaddlePaddle学习之路》笔记一——PaddlePaddle的安装

    原文博客:Doi技术团队 链接地址:https://blog.doiduoyi.com/authors/1584446358138 初心:记录优秀的Doi技术团队学习经历 环境 系统:Ubuntu 1 ...

最新文章

  1. 实例代码分享Python实现Linux监控
  2. mysql slave 配置_【mysql5.6】 数据库主从(Master/Slave)配置记录
  3. 这道题你怎么看?长春理工大学2021电子竞赛
  4. Android软键盘调用及隐藏,以及获得点击软键盘输入的字母信息
  5. pywt.upcoef中take使用详解
  6. 安川伺服调试软件_2020南昌三菱伺服回收广东收购价
  7. 有道难题第一题非OO解,极端记录160ms
  8. php 数组对,PHP数组游标实现对数组的各种操作详解
  9. tensorflow之exponential_decay
  10. Android完美适配dimens.xml脚本
  11. 【工程测试与训练】使用 DDRNet 测试、训练cityscapes数据集、训练自己的数据集
  12. BIOS升级,差一点也不行
  13. 用ENSP配置ospf
  14. java 小技巧_成为JAVA高手的25个小窍门
  15. 用c语言编程,统计大写字母,小写字母,数字,其他字符的个数,用C语言:输入一行字符,不超过50个,统计出其中英文大写字母,小写字母,数字,空格以及其他字符个数...
  16. 机器语言、汇编语言(低级语言)、高级语言
  17. 打点计时器的实现javascript
  18. 隔壁老王|亲述,我的运维心路历程
  19. 3D 专业词汇 (转)
  20. 为什么服务网页打开需要很久,点击之后计算机在处理什么,为什么我打开电脑桌面全部显示出来后要等很久才能打开连接.doc...

热门文章

  1. 基于S7-200 PLC和组态王组态污水处理控制系统的设计
  2. 基于近场动力学的二维疲劳裂纹扩展模型_完全耦合热弹性问题的普通态基近场动力学模拟——目录
  3. 计算机英语while still,计算机英语刘艺王春生第4版.ppt
  4. 3分钟教你安装 Compressor 视频转码编辑工具
  5. CSS布局之弹性布局
  6. 信息抽取实战:三元组抽取(限定领域 vs 开放领域)(附代码)
  7. 金蝶K3Cloud插件 -- 单据保存自动提交并审核(c#)
  8. 企业融资方式有哪些?
  9. 计算机房排风系统,机房新风系统新风量的计算及选型.xls
  10. 免费人工智能图像生成(PlaygroundAI)