zoukankan      html  css  js  c++  java
  • git基础之常用操作

    一、版本提交:

        (1)git add 文件名

        (2)git commit -m "版本提交信息"

        注:git分两个区:工作区+版本库

            在电脑中看到的文件夹就是工作区

            有一个隐藏的.git文件夹,它就是版本库

          add命令操作,就是把工作区中的文件或者文件的修改,添加到暂存区中。举个例子,就像,我们网上买东西,不断地把商品(文件)添加(add)到购物车(暂存库)一样。

          commit命令操作,就是把暂存区中的文件和文件修改全部提交到版本库中更新,并将暂存库清空。举个例子,就是清空购物车结账。

          

    二、版本回退:

        1.向之前的版本回退:

            1.1方法1:使用HEAD

               Git必须知道当前的版本是哪个版本。在Git中,使用HEAD表示当前版本,上一个版本是HEAD^,上上个版本是HEAD^^,当前往上100个版本写成HEAD~100

               例:git reset --hard HEAD^^

               注:

                HEAD是一个指向当前版本的指针,HEAD指向哪个版本号,当前版本就定位在哪。

                使用reset回退版本的时候,所做的就是,把HEAD指针进行变更,并且把工作区的内容进行更新。

                

            1.2方法二:使用版本号进行版本回退

                (1)git log  调取提交日志,查看版本号,选定要回退到的版本的版本号commit_id,图中,画红圈的就是commit_id

                    

                (2)回退到相应版本号版本:

                    git reset --hard commit_id

        2.向之后的版本回退:

          (1)使用git reflog,查看操作命令历史信息,出现如下信息:

              

            红圈就是相应版本的commit_id,这样我们就得到了commit_id,然后再用git reset --hard commit_id回退即可。

            

                    

                  

    三、撤销修改:

        分4种情况:

          1.只有工作区中的内容不想要

            1.1工作区内容错了,不想要工作区内容了,暂存区中内容此时为空:

              git checkout -- 文件名

              此时,文件内容,回退和版本库内容一致。

              注意:文件名和两个横杠--之间要有空格!!!

            1.2工作区内容错了,不想要工作区内容了,暂存区内容此时不为空:

              git checkout -- 文件名

              此时,文件内容回退到和暂存区中内容一致。

          2.工作区写的内容错了,并且已经被add到暂存区中,但是版本库中的内容是好的:

            (1)git reset HEAD 文件名

              将暂存区中的错误内容,搬到工作区,同时清空暂存区内容

            (2)git checkout -- 文件名

              使得工作区中的内容,回退到和版本库中内容一致 

          3.工作区写的内容错了,并且已经被commit到版本库中:

            使用版本回退:

              (1)git log 查看提交历史,确定要回到那个版本的版本号

              (2)git reset --hard commit_id

       

    四、删除文件:

        1.手动删除文件或者使用命令行:rm 文件名

        2.1如果是误删除操作,需要还原删除文件:

          git checkout -- 文件名

          结果就是从版本库,回复一个最新版本的文件

        2.2确实需要删除:

          git rm 文件名

          git commit -m "message"

          这样就从版本库中,也删除了该文件。

  • 相关阅读:
    kubeadm部署K8S集群v1.16.3
    MySQL5.7Gtid主从复制总是遇到日志被清等出现无法正常主从复制
    ORACLE数据库SQL优化 not in 与not exits
    某控股公司OA系统ORACLE DG搭建
    阿里云ECS服务器上搭建keepalived+mha+mysql5.6+gtid+一主两从+脚本判断架构踩的坑
    生产案例:开发不小心把某个表数据清了,没有逻辑备份,有物理备份
    生产案例:突然产生大量的归档日志,导致磁盘空间满了无法登陆数据库
    maxscale读写分离
    MYSQL EXPLAIN执行计划命令详解(支持更新中)
    vue 解决 post请求下载文件,下载的文件损坏打不开,结果乱码
  • 原文地址:https://www.cnblogs.com/tommyngx/p/9584373.html
Copyright © 2011-2022 走看看