• Git-3


    1,关于版本的回退和向前

    • git log 查看修改版本库的记录 ,可以知道每次的修改的版本ID号 commit id
    • git reset --hard HEAD^  使当前版本成为上一次的提交的版本

            其中参数HEAD^是指上一次的版本,HEAD^^的是上上次的版本,也可以使用HEAD~数字  来指定上几次的版本

            当你git reset之后呢,你再git log一下就会发现之后当前版本和这之前的版本修改信息存在。

            git中是有一个指针指向当前版本的,你git reset就相当于,移动指针。而git log的输出结果就只有指针所在位置的和指针之前的信息,指针之后的就不会显示了。

    • git reset --hard 版本ID号 可以使得当前版本到你指定的版本号,注意版本ID号没必要写全,只需写前几位即可
    • git reflog 可以查看所有的历史命令

           因为git reset之后,若你是回退到以往的版本,那么这之后的在git log的显示结果中回消失,所以当你想到这之后的版本时,你无法通过git log显示的信息来获取commit id ,所以可以使用 git reflog来得知你要到的未来的某个版本的版本ID

    2,关于stage的概念

    你创建的git的文件夹,就是你的工作区,你可以在这工作区中对文件进行增删改查

    在这个文件夹中有一个.git的文件,它就是Git的版本库。这里面包含stage和master以及指向master的指针HEAD

    其中 master是初始Git默认为我们创建的一个分支。

    其中stage即暂存区,每一次add就会把你的add的文件加入到stage中,而每一次commit就会一次性地把stage中的所有修改都提交到分支上。

    commit只是将stage中的内容提交到分支上,如果你工作区中的修改不add到stage中,那么即使commit,你的分支不能同步你的工作区的。

    3, Git跟踪管理的是修改,而不是文件

    4,Git的版本撤销

    • git checkout -- 文件名 丢弃工作区的修改
    • git reset HEAD 文件名  丢弃已经add到了stage中的修改
    • git reset --hard HEAD^    丢弃已经commit到了分支上的修改

    5,文件删除

         (1) 在工作区中直接 rm 文件名 (2) git rm 文件名  删除stage中的文件(3) git commit  -m "remove filename" 提交本次删除的修改

         但是,有时,你在工作区中误删了一个文件(只是在工作区中rm掉了,此时还没有在stage中git rm),那么可以使用 git checkout -- 文件名 将误删的文件恢复

  • 相关阅读:
    安全测试 + 渗透测试 Xmind 要点梳理
    Confluence wiki——CentOS6.8搭建详解
    Flask从入门到做出一个博客的大型教程(一)
    基于Cat的分布式调用追踪
    Elastic-job使用及原理
    Jmeter模拟不同带宽
    Mybatis中parameterType、resultMap、statementType等等配置详解(标签中基本配置详解)
    SQLyog Enterprise常用快捷键
    MyBatis 与 Spring Data JPA 选择谁?
    Springboot集成mybatis(mysql),mail,mongodb,cassandra,scheduler,redis,kafka,shiro,websocket
  • 原文地址:https://www.cnblogs.com/ivywenyuan/p/4574699.html
Copyright © 2020-2023  润新知