1.撤销操作

1.1 修改上一次的提交(commit)--  git commit --amend

  有时候我们在提交完成之后才发现有几个文件没有提交,或者发现提交信息填写错了,这时候可以使用 git commit --amend 尝试重新进行提交。

1.这条命令会将暂存区中的文件进行提交

2.在提交的时候可以修改上一次commit的提交信息

3.最终只有一次commit,第二次的commit会替代第一次的commit(也就是只会产生一个commit节点,使用 git log 会看到上一次的commit不见了,被这次的新commit替换)

1.2 取消暂存的文件 -- git reset HEAD <filename>

  使用 git reset HEAD <filename> 可以将暂存的文件变为未暂存的文件。

1.3 撤销对文件的修改 -- git checkout -- <filename>

  当你对一个文件进行了修改,还没有add进暂存区,你想要放弃所有的修改,将文件恢复到没有修改之前的样子,这时候可以使用 git checkout -- <filename>

这条命令会将文件恢复到上一次commit的时候,这个文件的样子。

2.打标签

  打标签是指给一个commit打上标签,表示这个commit的重要性。通常人们会用这个功能来标记发布节点(例如v1.0等)。

2.1 列出标签 -- git tag

   git tag 会按照字母顺序列出所有的标签。

   git tag -l '<condition>' 列出感兴趣的标签。例如git tag -l 'v1.0*' 列出v1.0系列的标签。

2.2 创建标签

  Git中的标签只有两种:轻量标签(lightweight)和附注标签(annotated)。通常建议使用附注标签,因为附注标签的信息更为全面,会包括打标签者的名字、电子邮件地址、日期时间等。

1.附注标签 --  git tag -a v1. -m "version 1.4"

  使用-a就可以为某个提交打上附注标签了。-m指定标签的描述信息。

3.轻量标签 --  git tag v1.

  轻量标签本质上是将提交校验和存储在一个文件中,没有保存其他任何信息。

2.3 查看特定标签的相关信息 --  git show v1.4 

  1.显示标签的相关信息;

2.显示标签被打在了哪个commit上。(对于轻量标签,只会显示标签被打在了哪个commit上)

2.4 对过去的提交打标签 --  git tag -a <tag name> -m <tag info> <commit 的hash值>  

  给指定的commit打上标签。这个指定的commit可以是很久以前提交的节点。也就是说给过去的commit打标签。

2.5 标签的共享 --  git push origin <tag name> 

  如果想将本地的tag上传到远程仓库,则必须显示的将tag push上去。默认情况下 git push  是不会将tag上传到远程仓库的。

  一次推送许多标签: git push origin --tags  会将不在远程仓库的所有标签上传上去。

2.6 删除标签 --  git tag -d <tagname> 

  注意这条命令不会更新远程仓库。

  使用 git push origin :refs/tags/<tagname> 来更新删除远程仓库的tag。

3.Git别名

  Git不会再你输入命令的时候推断出你想要输入的命令,如果不想要每次都输入完整的命令,这时候可以给命令定义别名,每次输入的时候输入别名就可以了。

可以通过config文件来实现:例如  $ git config --global alias.co checkout  给checkout去别名为co,那么每次在输入的时候,就可以使用git co来代替git checkout了。

下面的2个别名可以加入到config中:

$ git config --global alias.unstage 'reset HEAD --'     //使用git unstage表示取消暂存的操作,这样更加直观
$ git config --global alias.last 'log -1 HEAD'          //使用git last表示显示最后一个commit的相关信息

上面只是对Git的内部命令取别名。如果你想要对Git的外部命令取别名,那么你在命令前面加上!。

$ git config --global alias.visual '!gitk'     //将git visual定义为gitk

5.Git基础-撤销操作、标签的使用、Git别名的更多相关文章

  1. git基础-撤销操作

    ---恢复内容开始--- 撤销操作 在任何阶段,你都有可能想要撤销某些操作. 当我们提交完了代码,发现漏掉了几个文件没有添加,后者提交信息写错了,此时,可以运行--amend选项的提交命令尝试重新提交 ...

  2. 2.4 Git 基础 - 撤消操作

    2.4 Git 基础 - 撤消操作 撤消操作 任何时候,你都有可能需要撤消刚才所做的某些操作.接下来,我们会介绍一些基本的撤消操作相关的命令.请注意,有些撤销操作是不可逆的,所以请务必谨慎小心,一旦失 ...

  3. Git的撤销操作

    https://blog.csdn.net/qq_36431213/article/details/78858848 Git 初接触 (三) Git的撤销操作 git reset HEAD -- gi ...

  4. 4 Git 基础 - 撤消操作

    撤消操作 任何时候,你都有可能需要撤消刚才所做的某些操作.接下来,我们会介绍一些基本的撤消操作相关的命令.请注意,有些撤销操作是不可逆的,所以请务必谨慎小心,一旦失误,就有可能丢失部分工作成果. 修改 ...

  5. git 基础入门操作

    前言: 介绍基础的git入门级指令,虽然git指令非常多,但是实际工作中,我们会用到的非常少,小项目中甚至只需要用到2.3个.而且大部分人都会采用gui,而不是每次都打开终端然后输一长串难记的指令. ...

  6. Git III: 撤销操作

    所谓撤销操作,无非就是后悔药.对Git来说,撤销操作主要是以下几块: 撤销已经提交的Commit. 对已经通过git add加入Stage的文件,进行unstage操作. 对已经是Untracked却 ...

  7. 『现学现忘』Git基础 — 36、标签tag(一)

    目录 1.标签介绍 2.列出标签 3.创建标签 (1)标签的分类 (2)附注标签 (3)轻量标签 4.后期打标签 1.标签介绍 软件的某个发行版本所对应的,其实就是软件开发过程中,某一个阶段的最后一次 ...

  8. 『现学现忘』Git基础 — 37、标签tag(二)

    目录 5.共享标签 6.删除标签 7.修改标签指定提交的代码 8.标签在.git目录中的位置 9.本文中所使用到的命令 提示:接上一篇文章内容. 5.共享标签 默认情况下,git push 命令并不会 ...

  9. git各种撤销操作

    撤销git add: git reset HEAD+路径 或者git reset --+路径 撤销commit: 1.回退到具体的嘻哈值 git reset --hard     2.回退后仍包含本地 ...

随机推荐

  1. MYSQL水平拆分与垂直拆分

    目前很多互联网系统都存在单表数据量过大的问题,这就降低了查询速度,影响了客户体验.为了提高查询速度,我们可以优化sql语句,优化表结构和索引,不过对那些百万级千万级的数据库表,即便是优化过后,查询速度 ...

  2. tensorflow保存读取-【老鱼学tensorflow】

    当我们对模型进行了训练后,就需要把模型保存起来,便于在预测时直接用已经训练好的模型进行预测. 保存模型的权重和偏置值 假设我们已经训练好了模型,其中有关于weights和biases的值,例如: im ...

  3. 2018-2019-2 20165239 《网络对抗技术》Kali的安装 第一周

    2018-2019-<网络对抗技术> Kali安装 20165239其米仁增 一.资源下载以及工具安装 1.下载虚拟机工具VMware. 下载链接 :https://www.baidu.c ...

  4. pycharm的list的应用

    li = [11,22,22,33,44] v = li.count(22) print (v) #输出结果2 #计算元素的次数 count的应用 li = [11,22,33,22,44] li.e ...

  5. K-means算法性能评估及其优化

    1. SSE误差平方和(Sum of Square due to Error): 聚类情况: 计算公式: 注:SSE参数计算的内容为当前迭代得到的中心位置到各自中心点簇的欧式距离总和,这个值越小表示当 ...

  6. 关于<软件>的定义

    百度百科: 软件是一系列按照特定顺序组织的计算机数据和指令的集合.一般来讲软件被划分为系统软件.应用软件和介于这两者之间的中间件. 国标中的定义: 与计算机系统操作有关的计算机程序.规程.规则,以及可 ...

  7. 小程序API

    基础: wx.canIUse(string)    boolean wx.canIUse(string schema)   判断小程序的API,回调,参数,组件等是否在当前版本可用. 参数说明 ${A ...

  8. 类中被final修饰的成员变量需要初始化

    类中被final修饰的成员变量需要初始化,否则编译不通过,因为final修饰后不能再赋值,因此必须初始化.

  9. Tomcat 配置文件server.xml详解

    前言 Tomcat隶属于Apache基金会,是开源的轻量级Web应用服务器,使用非常广泛.server.xml是Tomcat中最重要的配置文件,server.xml的每一个元素都对应了Tomcat中的 ...

  10. CentOS7配置mailx使用外部smtp服务器发送邮件

    转自huskiesir的博客: 发送邮件的两种方式: 1.连接现成的smtp服务器去发送(此方法比较简单,直接利用现有的smtp服务器比如qq.新浪.网易等邮箱,只需要直接配置mail.rc文件即可实 ...