git tag、gitignore和git撤销提交
前言
最近在git的使用过程中遇到了一些新的问题,所以写下来方便自己回忆。
git tag
打标签
git tag -a v1.00 -m "注释"
git tag 打标签命令 -a 添加标签 -m 添加注释
切换标签
git checkout v1.00
就像切换分支一样
但你可以在这个标签上修改代码,但是不会影响其它分支的代码,如果保存在tag代码上修改,就要创建分支,如下:
git checkout -b branch_name
提交标签
git push origin -tags
等同于git push 只不过将master改成了-tags,说明是提交标签
删除标签
git tag -d v1.00
-d delete删除标签
查看标签
git tag
.gitignore用法
简介
通常如果在git文件夹里面如果有你不想到git仓库的文件,这就需要.gitignore文件了
使用方法
.gitignore使用起来很简单,就是把你不想提交的文件名字写到.gitignore里面就行
而且支持通配符,例如:
# 忽略指定文件
HelloWrold.class
# 忽略指定文件夹
bin/
bin/gen/
# 忽略.class的所有文件
*.class
# 忽略名称中末尾为ignore的文件夹
*ignore/
# 忽略名称中间包含ignore的文件夹
*ignore*/
加入已经忽略的文件
如果需要加入某些已经被忽略掉的文件.需要
git add -f filename
如果某些文件意外加入到缓存中去了,需要
git rm HelloWorld.class --cached
rm 'HelloWorld.class'
git add、git commit已经添加的文件撤销
文件撤销的情况分下面三种
git add文件,但是没有commit
git status查看已经添加的文件git reset HEAD撤销所有已经add的文件git reset HEAD filename撤销已经add中的某个文件即add又commit但是没有push的时候
git log查看commit IDgit reset commit_id返回提交的的节点(不加--hard是保留修改后的代码,加上--hard直接回到上次提交的状态,代码也改变)对于已经push上去的代码
git revert HEAD撤销前一次 commitgit revert HEAD^撤销前前一次 commitgit revert与git reset不同的地方在于,reset是回到前面的版本 ,revert是提交一个新的版本,将需要revert的版本的内容再反向修改回去,版本会递增,不影响之前提交的内容。
参考文章
Git中tag的用法
git add , git commit 添加错文件 撤销
git tag、gitignore和git撤销提交的更多相关文章
- git 学习笔记 —— 切换和恢复提交版本( git reset/reflog/tag 命令)
记录一下关于 git 不同提交版本间切换的操作以及如何恢复至切换之前的版本. 切换到之前提交的版本 —— git reset --hard 笔者在使用 git 时,首先接触到了一个"黑魔法& ...
- git tag的使用
查看所有的标签git tag 删除某一个标签git tag -d tagName 创建带注释的标签 git tag -a tagName -m "annotate" 轻量级标签 g ...
- git第二节----git clone与git tag
@git 远程克隆(clone)仓库,将远程工程clone到本地仓库:默认克隆远程master 分支 git clone https://github.com/kaokaozhu/Test.git ...
- git tag介绍
我们常常在代码发版时,使用git 创建一个tag ,这样一个不可修改的历史代码版本就像被我们封存起来一样,不论是运维发布拉取,或者以后的代码版本管理,都是十分方便的. git的tag功能git 下打标 ...
- git tag的用法及意义
git tag 介绍 命令是用来给当前项目状态(在某次commit后)打标签的,目的是便于以后将项目状态回滚到当时打标签的状态.可以把它与虚拟机的snapshot(快照)进行类比. 回想当时在看< ...
- drone 使用git tag触发构建
配置ref为tag .drone.yml中配置trigger为ref trigger: ref: - refs/tags/FileService 或者配置when为ref when: ref: - r ...
- git tag知多少
这个命令,其实很有用,类似clearcase中的label,就是给一个版本设置一个标记(标签),方便后期查找特定的版本. tag和commit的sha1那串字符串的关系,不是很大,但是还是要说一下的. ...
- git使用,Git的skil-map,git配置http/https/socks5代理
. 检出.克隆库: git clone git://git.openwrt.org/openwrt.git 2. git查看某个文件的修改历史 git log --pretty=oneline 文件名 ...
- git之win安装git和环境配置及常用命令总结
12.windowns安装git和环境变量配置 11.git之常见命令总结 ===== 12.windowns安装git和环境变量配置 ; 转自 https://wuzhuti.cn/2385.htm ...
随机推荐
- MySQL中的严格模式
很多集成的PHP环境(PHPnow WAMP Appserv等)自带的MySQL貌似都没有开启MySQL的严格模式,何为MySQL的严格模式,简单来说就是MySQL自身对数据进行严格的校验(格式.长度 ...
- 《深度探索C++对象模型》第二章 | 构造函数语意学
默认构造函数的构建操作 默认构造函数在需要的时候被编译器合成出来.这里"在需要的时候"指的是编译器需要的时候. 带有默认构造函数的成员对象 如果一个类没有任何构造函数,但是它包含一 ...
- 带你掌握Java各种日志框架
一:日志基本概念及框架 1:什么是日志 Java程序员在开发项目时都是依赖Eclipse/IDEA等集成开发工具的Debug调试功能来跟踪解决Bug,但项目打包部署发布到了测试环境和生产环境怎么办?难 ...
- CesiumJS-01 环境搭建
CesiumJS 环境搭建 操作环境: OS:Windows 10 专业版 19042.685 64 位操作系统 1.安装Node.js (1)打开Node.js官网 https://nodejs. ...
- 使用Supervisord部署go应用
nohup nohup 是后台作业的意思, nohup运行的进程将会忽略终端信号运行.即后台运行一个命令.nohup COMMAND &用nohup运行命令可以使命令永久的执行下去,和用户终端 ...
- MySQL是怎么保证redo log和binlog是完整的?
摘要:WAL机制保证只要redo log和binlog保证持久化到磁盘,就能确保MySQL异常重启后,数据可以恢复. 本文分享自华为云社区<MySQL会丢数据吗?>,作者: JavaEdg ...
- python中time模块的调用及使用
1 import time #通常import语句会写到代码的开头 2 3 print('------------------------') 4 print('------------------- ...
- k8s核心资源:精简版yaml示例
yaml语法及格式校验 详见:https://www.cnblogs.com/uncleyong/p/15437385.html 创建资源的三种方式 参考:https://www.cnblogs.co ...
- 漏洞CVE 2017-8464
概述 微软的Patch Tuesday更新发布了多达95个针对Windows.Office.Skype.IE和Edge浏览器的补丁.其中27个涉及远程代码执行,18个补丁被微软设定为严重(Critic ...
- 5款开源BI系统倾力推荐,企业信息化的利器
如今的企业都在选择开源BI系统,提升企业信息化的水平.那么开源BI系统到底该如何选择?在目前的百度上面有着许许多多类似的内容,本文就整理了其中优秀的5款工具,帮助大家选择合适的软件. 1.Smartb ...