学习git(一):git的基本命令和回滚文件

每天对自己多问几个为什么,总是有着想象不到的收获。 一个菜鸟小白的成长之路(copyer)


1、git个人配置信息

//配置邮箱
git config --global user.email "xxx@xxx.com"
//配置用户名
git config --global user.name "xxx"

//查看配置信息
git config --list

2、git对项目进行管理的基本步骤

  • 进入要管理的文件夹

  • 执行初始化命令

    git init
    
  • 查看管理目录下的文件状态

    git status
    
    //注:新增的文件和修改过后的文件都是红色
    
  • 管理指定的文件(红变绿)

    git add 文件名
    git add .
    
  • 生成版本

    git commit -m '描述信息'
    
    //注:-m 是message的缩写
    
  • 查看版本记录

    git log
    

3、git的四大区域

在这里插入图片描述

工作区: 平时写代码的地方

暂存区:用于临时存放的改动。事实上它只是一个文件,保存即将要提交到文件列表信息。(.git/index)中,有时候也称为索引

本地仓库: 本地存放版本的地方,其中HEAD 指向最新放入仓库的版本

远程仓库: 托管代码的服务器(gitee、github、gitlab)用于远程数据的交换

之间转化的示意图
在这里插入图片描述


4、版本回滚

  • 假设我们提交了两个版本

    git commit -m '第一提交'
    git commit -m '第二次提交'
    
  • 查看版本号

    git log
    

    在这里插入图片描述

第二次提交 回滚到第一提交

  • 回滚到版本为第一提交

    git reset --hard 版本号   
    
    //根据版本号,回退当前版本
    

    在这里插入图片描述

  • 再次使用 git log ,就发现HEAD已经指向第一提交版本了

如果又想要回退第二次提交

  • 步骤一
git reflog    
//查看版本号

在这里插入图片描述

可以查看到所有的版本号以及回滚的版本号

  • 步骤二
git reset --hard 版本号

在这里插入图片描述

git reset的参数区别

--soft: 仅仅移动当前head的指针,不会改变工作区和暂存区的内容

--mixed: 是reset的默认参数,移动指针,改变暂存区里面的内容,但是不会改变工作区

--hard: 当前指针head ,暂存区 工作区 都会改变


5、不同情况下的文件回滚

  • 情况一:还没执行git add

    git checkout .
    
    // 使用 暂存区里面的内容 覆盖 工作区里面的内容
    
  • 情况二:已经提交到暂存区(git add),但是没有提交到本地仓库( git commit)

    git reset --hard
    
    //改变所以指针,暂存区,工作区内容
    
  • 情况三: 以及git commit,但是没有 git push

    git reset --hard origin/master
    
    //从远程仓库把代码取回来,然后覆盖本地仓库、本地暂存区和工作区  
    
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值