一、版本提交:

    (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"

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

git基础之常用操作的更多相关文章

  1. Linux - nginx基础及常用操作

    目录 Linux - nginx基础及常用操作 Tengine淘宝nginx安装流程 nginx的主配置文件nginx.conf 基于域名的多虚拟主机实战 nginx的访问日志功能 网站的404页面优 ...

  2. git学习 本地常用操作01

    注意: Microsoft的Word格式是二进制格式,因此,版本控制系统是没法跟踪Word文件的改动 不要使用Windows自带的记事本编辑任何文本文件 开始git项目: 初始化本地项目: 初始化:g ...

  3. Git安装与常用操作

    Git作为一个版本控制工具,使用前需进行下载安装:可自行到官网下载. 一.安装(windows) 1.双击下载好的文件进行安装,弹窗中点击"next" 2.默认勾选,继续点击&qu ...

  4. GItHub Git 基础教程 常用命令 命令

    最近复习了一下Git的使用,简单总结了一些.以供以后查阅和大家参考. 一,安装 首先是Linux下: 打开shell ,输入 sudo apt-get install git-core 之后回车输入密 ...

  5. Git介绍及常用操作演示(一)--技术流ken

    Git介绍 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发 ...

  6. CI 知识 :Git介绍及常用操作

    Git介绍 Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效.高速的处理从很小到非常大的项目版本管理. Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发 ...

  7. git工作中常用操作总结

    这篇文章主要记录下工作中常用的git操作.主要是对之前文章记录的问题做个总结,这个其实在idea中操作更加简单 别名配置 在敲git 命令时,其实可以使用别名,比如 commit可以配置为ci 下面是 ...

  8. Git与GitHub常用操作

    --------------------------基本操作--------------------------clone 拷贝远程仓库commit 本地提交push 远程提交pull 更新本地--- ...

  9. git入门(4)团队中git保管代码常用操作

    在团队中协作代码时候,一定要熟练使用以下git命令,不至于把代码库弄乱, PS:一定要提交自己代码(git push)时候,先进行更新本地代码库(git pull),不然提交异常 git常用命令 1· ...

随机推荐

  1. nginx 升级为最新版 nginx -1.12.0

    标签:nginx 公司目前使用的nginx版本比较低(nginx-1.0.12),请网络安全公司做了一下“远程安全评估”,发现有下列漏洞: nginx URI处理安全限制绕过漏洞(CVE-2013-4 ...

  2. 详细讲解:使用tp3.2.3完成简单的注册登录功能

    使用3.2.3进行了一个简单不过的注册登录功能,界面介绍: 1.注册: 2.登录: 3.登录成功后: 没错,就是简单的让你特别容易上手,上面运用到的知识有: (1)自动验证.自动完成 (2)sessi ...

  3. IOS - (id)initWithStyle... 方法的使用

    // 该方法只有在通过代码创建控件的时候才会调用, 如果控件是通过xib或者storyboard创建出来的不会调用该方法- (id)initWithStyle:(UITableViewCellStyl ...

  4. jQuery Pagination分页插件--刷新

    源码地址:https://github.com/SeaLee02/FunctionModule/blob/master/UploadFiles/WebDemo/FenYE/FenYeDemo.aspx ...

  5. Oracle数据库学习(四)

    11.创建表 crate table tab1(f_id number not null,f_a varchar2(7) not null,f_b number(6,2) not null): 主键: ...

  6. 【思维题 最大权闭合子图】loj#6045. 「雅礼集训 2017 Day8」价

    又是经典模型的好题目 题目描述 人类智慧之神 zhangzj 最近有点胖,所以要减肥,他买了 NN 种减肥药,发现每种减肥药使用了若干种药材,总共正好有 NN 种不同的药材. 经过他的人脑实验,他发现 ...

  7. Log错误日志级别

    日志记录器(Logger)的级别顺序:     分为OFF.FATAL.ERROR.WARN.INFO.DEBUG.ALL或者您定义的级别.Log4j建议只使用四个级别,优先级 从高到低分别是 ERR ...

  8. MySQL - FIND_IN_SET 函数使用方法

    SELECT * FROM xxxTableName x WHERE FIND_IN_SET(x.id, '1,2,3,4,5,6,7,8');   如上查询,意为:xxxTableName 表中 x ...

  9. DNS服务初步搭建

    一.准备DNS服务环境 选择 bind dns服务软件包 直接yum安装 bind 和 bind-utils 工具包,测试机器安装bind-utils测试工具包. 服务程序名为 named 二.配置D ...

  10. PS1

    linux系统终端命令提示符设置(PS1)记录 - 散尽浮华 - 博客园 https://www.cnblogs.com/kevingrace/p/5985970.html PS(Prompt Sig ...