vue-cookie 设置过期时间之关闭浏览器清除 cookie 2557

vue-cookie 设置过期时间及关闭浏览器清除 cookie

后台基本开发规范 2632

后台基本开发规范

vue 使用 uuid 报错:uuid has no default export 3161

vue 在使用 uuid 的时候报这个错误如何解决:uuid has no default export

vue 包含别名的图片地址如何动态加载 2909

vue 包含别名的图片地址如何动态加载。如:imgurl = "@img/1.png"

vue 获取非200状态码返回的 response 数据 1681

如何获取非200状态码返回的 response 数据

jenkins 搭建 vue 自动发布平台 1705

如何用 jenkins 搭建一个 vue 项目的自动发布平台

腾讯云 cdn 的使用及添加 cname 报错:解析记录已存在 3000

首次开通腾讯云送了120G的 cdn 流量,虽然本博客没多少人看,但是本着不浪费的精神,还是去配置了下 cdn

华为云对象存储 obs 文件流上传 4110

laravel 支持华为云对象存储 obs 文件流上传

华为云对象存储 obs 基于表单上传文件 4982

记录华为云对象存储 obs 基于表单上传文件

php 华为云对象存储安装( obs 安装) 5446

在 laravel 下安装 obs 依赖包,安装华为云对象存储依赖包

小提示

如有侵权请邮件通知

ftfoolish - 求知若饥,虚心若愚
vue-cookie 设置过期时间之关闭浏览器清除 cookie 2618

vue-cookie 设置过期时间及关闭浏览器清除 cookie

后台基本开发规范 2688

后台基本开发规范

vue 使用 uuid 报错:uuid has no default export 3225

vue 在使用 uuid 的时候报这个错误如何解决:uuid has no default export

vue 包含别名的图片地址如何动态加载 2970

vue 包含别名的图片地址如何动态加载。如:imgurl = "@img/1.png"

vue 获取非200状态码返回的 response 数据 1713

如何获取非200状态码返回的 response 数据

jenkins 搭建 vue 自动发布平台 1723

如何用 jenkins 搭建一个 vue 项目的自动发布平台

腾讯云 cdn 的使用及添加 cname 报错:解析记录已存在 3022

首次开通腾讯云送了120G的 cdn 流量,虽然本博客没多少人看,但是本着不浪费的精神,还是去配置了下 cdn

华为云对象存储 obs 文件流上传 4130

laravel 支持华为云对象存储 obs 文件流上传

华为云对象存储 obs 基于表单上传文件 5009

记录华为云对象存储 obs 基于表单上传文件

php 华为云对象存储安装( obs 安装) 5466

在 laravel 下安装 obs 依赖包,安装华为云对象存储依赖包

小提示

如有侵权请邮件通知

gitlab 回滚 - ftfoolish

gitlab 回滚

本内容转载至:git push 操作代码回滚

(1)改完代码匆忙提交,上线发现有问题,怎么办? 赶紧回滚.

(2)改完代码测试也没有问题,但是上线发现你的修改影响了之前运行正常的代码报错,必须回滚.

这些开发中很常见的问题,所以 git 的取消提交,回退甚至返回上一版本都是特别重要的.

大致分为下面2种情况:

1.没有 push

这种情况发生在你的本地代码仓库,可能你 add,commit 以后发现代码有点问题,准备取消提交,用到下面命令:

git reset [--soft | --mixed | --hard

上面常见三种类型

--mixed

会保留源码,只是将 git commit 和 index 信息回退到了某个版本.

git reset 默认是 --mixed 模式

git reset --mixed 等价于 git reset

--soft

保留源码,只回退到 commit 信息到某个版本.不涉及 index 的回退,如果还需要提交,直接 commit 即可.

--hard

源码也会回退到某个版本,commit 和 index 都回回退到某个版本.(注意,这种方式是改变本地代码仓库源码)

当然有人在 push 代码以后,也使用 reset --hard 回退代码到某个版本之前,但是这样会有一个问题,你线上的代码没有变,线上 commit,index 都没有变,当你把本地代码修改完提交的时候你会发现权是冲突.....

所以,这种情况你要使用下面的方式

2.已经 push

对于已经把代码 push 到线上仓库,你回退本地代码其实也想同时回退线上代码,回滚到某个指定的版本,线上,线下代码保持一致.你要用到下面的命令

git revert 用于反转提交,执行 evert 命令时要求工作树必须是干净的.

git revert 用一个新提交来消除一个历史提交所做的任何修改.

revert 之后你的本地代码会回滚到指定的历史版本,这时你再 git push 既可以把线上的代码更新.(这里不会像reset造成冲突的问题)

revert 使用,需要先找到你想回滚版本唯一的commit标识代码,可以用 git log 或者在 adgit 搭建的 web 环境历史提交记录里查看.

git revert c011eb3c20ba6fb38cc94fe5a8dda366a3990c61 通常,前几位即可

git revert c011eb3

git revert是用一次新的commit来回滚之前的 commit,git reset 是直接删除指定的 commit

此时本地代码即为回滚的指定版本,需强制 push:git push -f(如果不强制 push,只是把代码回滚到当前版本,如果此时去修改代码,当你要提交的时候,会先让你 pull,而 pull 下来的代码还是你后面提交的所有版本的代码)

看似达到的效果是一样的,其实完全不同.

第一:

上面我们说的如果你已经push到线上代码库, reset 删除指定 commit 以后,你 git push 可能导致一大堆冲突.但是 revert 并不会.

第二:

如果在日后现有分支和历史分支需要合并的时候,reset 恢复部分的代码依然会出现在历史分支里.但是 revert 方向提交的 commit 并不会出现在历史分支里.

第三:

reset 是在正常的 commit 历史中,删除了指定的 commit,这时 HEAD 是向后移动了,而 revert 是在正常的 commit 历史中再 commit 一次,只不过是反向提交,他的 HEAD 是一直向前的.


小提示

如有侵权请邮件通知