zoukankan      html  css  js  c++  java
  • 通过 Gitlab 找回远程、本地都删除的Commit

    背景介绍

      最近我们的DevOps平台做了一次升级,从安全方面考虑增加了一个检查规则:非特殊情况下,每次发版时代码中必须包含上一次发布的Commit,这个是为了规避曾经出现过的“代码合并过程中丢失功能”的问题。

      今天我们的一个内部项目上到DevOps平台时就出现了问题,当时的一个功能发布在relase/x分支下,发布后没有及时合并到master分支。然后我做了一次分支清理,原本是想把本地的分支都清理掉,结果IDE也自动把远程分支删除完了,这就尴尬了,相当于上次发布的commit就丢失了。

    解决办法

      先想办法找到上一次发布commit时的SHA,然后通过 "New Branch" 功能创建分支即可恢复(Commit恢复后对应的Tag也会自动恢复),如下图所示:  

       看来Gitlab内部还是保存了各个历史版本的,非常赞!

    后记

      一般在项目中除了分支合并漏会导致丢失commit外,使用Squash功能也会出现(有时候为了整合多次提交信息,会通过Squash把多个Commit合并成一个Commit,看起来会更加整洁),当出现这种情况后就可以通过上面的方法来恢复。

  • 相关阅读:
    “扫一扫”模型
    CenterNet算法介绍
    PyTorch搭载的CenterNet算法环境配置
    软件评测
    代码规范制定
    寒假作业 2/2
    软件工程实践总结&个人技术博客
    React 请求拦截与接口统一和模拟解决方案
    软件评测
    结对作业二
  • 原文地址:https://www.cnblogs.com/odirus/p/14926862.html
Copyright © 2011-2022 走看看