2.4.常用git命令

2.4.1.回顾前面使用的命令

1.git add  文件名   这个命令用来将代码提交到暂存区

2.git status  可以查看当前提交的状态

3.git commit -m '注释'  将代码从暂存区提交到版本库

2.4.2.查看日志

git log

2.4.3.对比操作

经过第一次提交,版本库中的index.html是空文件,接下来我们开始写代码,在工作区index.html文件中写一点内容

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta ="X-UA-Compatible" content="ie=edge">
<title>Document</title>
</head>
<body>
<h1>螺钉课堂</h1>
</body>
</html>

代码写好后,我们将代码提交到暂存区

git add index.html

接下来,我们继续修改工作区中index.html的代码,增加一行代码

<body>
<h1>螺钉课堂</h1>
<h1>hello nodeing!!!</h1>
</body>

经过上面步骤以后,工作区,暂存区,版本库中的index.html内容如图:

1.这个时候如果你想要对比查看工作区和暂存区的文件差异,可以使用下面的命令:

git diff

结果如下:

其中,绿色字体部分表示工作区新增加的修改

2.如果你想要对比暂存区和版本库的差异,可以使用下面命令

// 使用git diff --staged 也能达到一样的效果
git diff --cached

结果如下:

由于版本库中index.html是个空文件,此时,绿色部分全是增加的内容,意味着暂存区里面新增了多行代码

3.如果你想要对比工作区和版本库之间的差异,可以使用下面的命令

git diff master

执行效果如下:

最后,我们把对比功能演示的代码提交到版本库

git commit -m '第二次提交,对比功能演示完成'

2.4.4.撤销操作

接前面的操作,我们先把工作区中的修改提交到暂存区

git add index.html

1.如果提交后,你觉得代码写错了,想要从暂存区撤销回工作区,可以执行下面命令:

// git reset HEAD <file>
git reset HEAD index.html

2.如果想让工作区还原回上一次提交到版本库的状态,可以执行下面的命令:

// git checkout -- <file>...
git checkout index.html

3.如果提交到版本库后发现当前的提交是有问题的,可以撤销回来,执行下面的命令:

git commit -m '注释' --amend

注意:这条命令会把上一次提交撤销然后合并本次提交

2.4.5.删除操作

1.工作区的文件可以随意删除

2.如果工作区的这个文件已经被提交到了暂存区,除了删除工作区文件外,还可以通过下面命令把暂存区文件也删除了

// git rm 文件名
git rm test.html

注意:如果工作区中没有删除test.html这个文件,而直接执行上面的命令,是不能删除暂存区文件的

3.如果想同时删除暂存区和工作区文件,可以执行下面命令

git rm -f test.html

4.如果只想删除暂存区文件,而保留工作区文件,可以执行下面命令

git rm --cached test.html

2.4.6.恢复操作

1.如果工作区中的index.html被删除掉了,这个时候想从版本库回复这个index.html文件,可以执行下面命令:

// 语法: git checkout 版本号 文件名
git checkout bf52d177b1cfd091db index.html

注意:上面命令中用到的版本号,可以通过git log打印出来获取到,如下图

2.如果想恢复多个文件,可以使用恢复整个版本的方式来实现,执行命令;

// 语法:git reset --hard 版本号
git reset --hard bf52d177b1cfd091db

螺钉课堂视频课程地址:http://edu.nodeing.com

git和github入门指南(2.2)的更多相关文章

  1. git和github入门指南(6)

    6.交作业的流程 以下内容是螺钉课堂在线就业班提交作业的要求,非螺钉课堂在线就业班学员不用学习 螺钉课堂作业全程采用git管理,希望在日常使用中,加深对git和github的理解 具体流程: 1.注册 ...

  2. git和github入门指南(1)

    1.git和github简介 1.1.git是什么?github是什么?git和github的关系? Git是一个开源的分布式版本控制系统,可以有效.高速地处理从很小到非常大的项目版本管理. Git ...

  3. git和github入门指南(5)

    5.github上的标签 5.1.标签的作用 给当前版本打一个标签,在github上就会形成一个releases版本 点击进去后,用户就可以下载对应版本的源代码 5.2.在本地git工具上创建标签,同 ...

  4. git和github入门指南(4)

    4.分支管理 4.1.什么是分支? 分支可以简单的理解为分叉,在主干上长出一条枝干出来,主干分支通常叫做master,在主分支上可以开很多分支出来,不同的人在不同的分支上做开发,最后合并到主分支,这样 ...

  5. git和github入门指南(3.3)

    3.4.开源项目的协作方式 开源项目通常是没有写入的权限的,我们需要换一种协作方式参与到这些开源项目中 为了演示方便,我们把git-demo这个项目中nd-00002这个合作者的权限取消 接下来nd- ...

  6. git和github入门指南(3.2)

    3.3.解决多人协作开发过程中的代码冲突问题 1.在多人协作开发的项目中,每次开发之前每个人最好先同步更新一下github上最新的代码,可以减少冲突的概率 git pull 2.产生冲突 目前咱们演示 ...

  7. git和github入门指南(3.1)

    3.远程管理 3.1.远程仓库相关命令 1.查看远程仓库名字,这里以github为例 git remote 上面命令执行后会得到:origin,这样一个名字,这个名字是我们克隆的时候默认设置好的 如果 ...

  8. git和github入门指南(2.1)

    2.git常用命令 2.1.git的三个区 1.工作区 工作区就是你项目所在目录,这个目录是可以非常直观的看到的,编写代码主要在这个目录进行,例如: 2.暂存区 暂存区从字面上去理解就是用来暂时保存项 ...

  9. Git和Github入门

    推文:官方手册,十分详细 推文:git和github快速入门 一.git使用 1.git安装 (1)windows 网站:https://git-scm.com/download/win下载安装即可 ...

随机推荐

  1. Rocket - tilelink - HintHandler

    https://mp.weixin.qq.com/s/MHW_aBSL72YNee9bVWWeaw   简单介绍HintHandler的实现.   ​​   1. 基本功能   实现Hint请求的处理 ...

  2. js循环语句while,do..while,for

    1. while循环 while(循环条件){ 循环体语句块; } 2.do..while循环 do{ 循环体语句块; }while(循环条件) 两者区别:while先判断后执行.循环体语句可能一次都 ...

  3. JavaScript (六) js的基本语法 - - - Math 及 Date对象、String对象、Array对象

    个人博客网:https://wushaopei.github.io/    (你想要这里多有) 一.Math 1.Math对象的案例 var result= Math.max(10,20,30,40) ...

  4. 从SpringBoot源码分析 主程序配置类加载过程

    1.@Import(AutoConfigurationPackages.Registrar.class) 初始SpringBoot 我们知道在SpringBoot 启动类上有一个@SpringBoot ...

  5. Java实现 蓝桥杯 算法训练 第五次作业:字符串排序

    试题 算法训练 第五次作业:字符串排序 问题描述 输入一个小写字符串,按从小到大的顺序输出. 输入格式 bcaed 输出格式 abcde 顶格输出,中间没有空格 样例输入 一个满足题目要求的输入范例. ...

  6. Java实现 LeetCode 275 H指数 II

    275. H指数 II 给定一位研究者论文被引用次数的数组(被引用次数是非负整数),数组已经按照升序排列.编写一个方法,计算出研究者的 h 指数. h 指数的定义: "h 代表"高 ...

  7. Java实现字符串匹配

    1 问题描述 给定一个n个字符组成的串(称为文本),一个m(m <= n)的串(称为模式),从文本中寻找匹配模式的子串. 2 解决方案 2.1 蛮力法 package com.liuzhen.c ...

  8. Java实现埃拉托色尼筛选法

    1 问题描述 Compute the Greatest Common Divisor of Two Integers using Sieve of Eratosthenes. 翻译:使用埃拉托色尼筛选 ...

  9. java实现数组转置

    ** 数组转置** 编写程序将2行3列的数组行列置换复制给3行2列的数组(即数组的转置).已经写了如下代码,请完善之: class y{ public static void main(String[ ...

  10. 浅谈js运行机制

    前言 因为js的运行机制十分重要,理解起来也十分抽象,仍还是在这里做个记录,加深自己的记忆. 总之,希望本文的内容能够对您的学习或者工作有所帮助.另,如果有任何的错误或者不足请指正! 如何理解js单线 ...