一、版本提交:

    (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. 兼容ie8的圆形进度条

    主要是利用html5中的svg 画出圆形进度条 并且兼容ie8 https://github.com/GainLoss/Circular-progress-bar

  2. 干净的架构The Clean Architecture_软件架构系列

    本文转载自:https://www.jdon.com/artichect/the-clean-architecture.html ,这个博客站很有历史了,博主经常翻译Github大牛的文章,值得墙裂推 ...

  3. RabbitMQ使用教程(五)如何保证队列里的消息99.99%被消费?

    1. 前情回顾 RabbitMQ使用教程(一)RabbitMQ环境安装配置及Hello World示例 RabbitMQ使用教程(二)RabbitMQ用户管理,角色管理及权限设置 RabbitMQ使用 ...

  4. macbook pro开机键盘键盘和触摸板没反应问题

    今天遇到开机键盘和触摸板没反应的问题,打电话给售后,他叫我插一个usb外置键盘,开机时按shift+alt+control+电源键开机,突然发现可以了,这bug我也是醉了

  5. IOS后台执行

    大多数应用程序进入后台状态不久后转入暂停状态.在这种状态下,应用程序不执行任何代码,并有可能在任意时候从内存中删除.应用程序提供特定的服务,用户可以请求后台执行时间,以提供这些服务. 判断是否支持多线 ...

  6. node第一天

    一.主要执行的文件命名一般为main.js var aModule =require('./a.js');//相对路径 var aModule =require('a.js');//专门从node_m ...

  7. 20180909 解析JS Cookie的设置,获取和检索

    引用: JavaScript Cookie - by runoob.com Cookie是储存在电脑文本文件中的数据,用于保存访问者的信息,并可以在下次打开页面时引用. 页面在设置/引用访问者信息时, ...

  8. Django项目中"expected str, bytes or os.PathLike object, not list"错误解决:

    对于这个错误,也在于自己对django基础的掌握不是很牢固,忽略了MEDIA_ROOT的类型是string,而不是list. 错误的写法: MEDIA_ROOT = [ os.path.join(BA ...

  9. 二、Shell 变量

    Shell 变量 定义变量时,变量名不加美元符号($,PHP语言中变量需要),如: your_name="runoob.com" 注意,变量名和等号之间不能有空格,这可能和你熟悉的 ...

  10. 三步搞定Vmware固定虚拟机的IP

    1.修改vmware的虚拟网络编辑器 按照图中红色方框的方法设置,子网IP可以设置成自己想要的,点击NAT设置,记住网关IP. 2.进入centos虚拟机系统 编辑 vim /etc/sysconfi ...