【DEVOPS】gitChecker快速使用指南

0. 目录

      • 1. 前言
      • 2. gitChecker简介
      • 3. 快速应用
      • 4. 相关

1. 前言

时过境迁,原本以为不需要文档说明的操作,四年后的现在因为GitLab服务器的掉电损坏,被迫面对从零开始的一切,才发现实际执行时的一步一个坑。

痛定思痛之下,决定重新整理思维,于是便有了本文。

2. gitChecker简介

Gitee - gitChecker借鉴自SVNChecker, 简化GIT服务端的Hook功能实现,实现逻辑复用。

3. 快速应用

################ 1. clone gitchecker project
cd /usr/local/
git clone https://gitee.com/lqzkcx3/gitchecker.git
mv gitchecker _gitchecker################ 2. install hook
########### 2.1 pre-commit
# 基于全局hook
cd /opt/gitlab/embedded/service/gitlab-shell/hooks
mkdir pre-receive.d && cd $_ 
vi pre-commit.sh#!/bin/sh/usr/bin/python2.7 /usr/local/_gitchecker/Main.py PpreCommit || exit 1chmod +x  pre-commit.sh   # 调整这个脚本的权限, 千万注意. 这里特意将这条命令单独列了出来.########### 2.2 post-commit
# 基于全局hook
cd /opt/gitlab/embedded/service/gitlab-shell/hooks
mkdir post-receive.d && cd $_
vi post-commit.sh#!/bin/sh/usr/bin/python2.7 /usr/local/_gitchecker/Main.py PostCommit || exit 1chmod +x  post-commit.sh   # 调整这个脚本的权限, 千万注意. 这里特意将这条命令单独列了出来.################ 3. 配置gitcheckerconfig.ini (详细说明参见底部参考链接)
[Default]
#This property tells gitchecker about all checks
#(UnitTests, AccessRights, XMLValidator etc) it should execute.
#Separated with comma (",")
Main.PostCommitChecks=PushCommitMsgToZentaoPushCommitMsgToZentao.FailureHandlers=Console
PushCommitMsgToZentao.SuccessHandlers=Console################ 4. 拷贝相应的hook脚本(这里以PushCommitMsgToZentao.py为例)
cd /usr/local/_gitchecker
cp checks_extend/PushCommitMsgToZentao.py checks/################ 5. 测试验证
cp /usr/local/_gitchecker/test/test-post-commit.sh ${gitLocalRespRootPath}
chmod +x test-post-commit.sh
./test-post-commit.sh

4. 相关

  1. Github - SVNChecker
  2. Gitee - gitChecker
  3. 【DEVOPS】借助SvnChecker实现SVN提交日志规范的落地
  4. 《SVNChecker_Overview_V1_0官方文档.pdf》

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/50612.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

jQuery常用选择器(入门级)代码演示

1.基本选择器&#xff1a; // 选择id为"myElement"的元素 $("#myElement");// 选择class为"myClass"的所有元素 $(".myClass");// 选择所有<p>标签 $("p");2.属性选择器&#xff1a; // 选择带有name属性的input元素…

vscode搭建rust开发环境

由于rustrover不是免费的&#xff0c;此处教学搭建一套基于vscode的rust开发环境&#xff0c;可运行&#xff0c;可调式 1.下载vscode1.91.1 Download Visual Studio Code - Mac, Linux, Windows 2.下载插件 打开网站下载插件 rust-analyzer-0.4.2049、vscode-lldb-1.10.0、…

c#中的正则表达式和日期的使用(超全)

在 C# 中&#xff0c;正则表达式&#xff08;Regular Expressions&#xff09;是一种强大的文本处理工具&#xff0c;用于执行各种字符串搜索、替换和验证任务。以下是一些常用的正则表达式示例及其用途&#xff1a; 1. 邮箱地址验证 ​ string emailPattern "^[^\s][^…

redis 缓存中间件 (缓存数据库)

redis的简介 nginx web服务器 php 转发动态请求 tomcat web页面 &#xff0c;也可以转发动态请求 springboot 自带tomcat 所有的数据库都不支持高并发&#xff0c;一旦访问量激增&#xff0c;数据库很快就会崩溃。 redis 也是一个数据库&#xff0c;不单单是一个缓存工具…

docker 配置安装宝塔面板

宝塔镜像 https://hub.docker.com/r/btpanel/baota 配置宝塔 第一步&#xff1a;创建一个名为 bt-data 的目录&#xff0c;此目录将存储宝塔数据。 $ mkdir bt-data $ chmod -R 755 bt-data 第二步&#xff1a;在 bt-data 目录中创建一个名为 docker-compose.yml 的文件&#x…

IDEA项目的依赖(pom.xml文件)导入问题及解决

前言&#xff1a;该文章为转载&#xff0c;没有仔细的看 IDEA新建项目和pom.xml文件被修改时&#xff0c;右下角都会出现 Maven projects need to be imported&#xff08;项目需要导入依赖&#xff09; 如下&#xff0c;点击 Import Changes导入后&#xff0c;有时会一直处于…

数据库-存储过程

1、概念 存储过程&#xff08;Stored Procedure&#xff09;是在大型数据库系统中&#xff0c;一组为了完成特定功能的SQL 语句集&#xff0c;存储在数据库中&#xff0c;经过第一次编译后&#xff0c;再次调用不需要重复编译&#xff0c;用户通过指定存储过程的名字并给出参数…

【Android面试八股文】荣耀面试算法题:输出所有的水仙花数

文章目录 一、水仙花数的定义二、算法实现 一、水仙花数的定义 要输出所有的水仙花数&#xff0c;我们需要先了解什么是水仙花数。 水仙花数&#xff08;Narcissistic number&#xff09;&#xff0c;也称为自恋数、自幂数、阿姆斯特朗数&#xff0c;是指一个 n 位的正整数&a…

NAS、SAN 与 DAS 的比较与应用场景

文章目录 1. NAS&#xff08;网络附加存储&#xff09;定义特点实现成本&#xff1a;适用场景 2. SAN&#xff08;存储区域网络&#xff09;定义特点实现成本&#xff1a;适用场景 3. DAS&#xff08;直接附加存储&#xff09;定义特点实现成本&#xff1a;适用场景 区别总结结…

Redis学习[1] ——基本概念和数据类型

Redis学习[1] ——基本概念和数据类型 一、Redis基础概念 1.1 Redis是什么&#xff0c;有什么特点&#xff1f; Redis是一个基于**内存的数据库&#xff0c;因此读写速度非常快**&#xff0c;常用作缓存、消息队列、分布式锁和键值存储数据库。支持多种数据结构&#xff1a;…

Java 内推 | 教育行业缺口来了,研发,运维,产品,教研,职能,营销... 别错过

Java 内推 | 教育行业缺口来了&#xff0c;研发&#xff0c;运维&#xff0c;产品&#xff0c;教研,职能&#xff0c;营销… 别错过 岗位职责&#xff1a; 1、根据公司战略及业务规划&#xff0c;参与部门业务架构分析与设计&#xff0c;包含规划立足当前、面向未来的应用架构…

源码编译安装,及nginx服务控制、监控块

1.源码编译安装&#xff1a; [root17dns ~]# wget https://nginx.org/download/nginx-1.27.0.tar.gz 2.解压&#xff1a; [root17dns ~]# tar -zxvf nginx-1.27.0.tar.gz 3.安装gcc等工具 [root17dns ~]# yum -y install gcc gcc-c [root17dns ~]# yum -y install make lrzsz …

postman给全部接口添加请求头数据(如token)

如果给没有一个接口添加请求头token就太慢了&#xff0c;如下图。可以点击所有接口的所属的目录。点击“Scripts”&#xff0c;点击Pre-request按钮。加入代码&#xff1a; pm.request.addHeader("Authorization:eyJhbGciOiJIUzI1NiIsInR5cCI111pXVCJ9.eyJjbGFpbXMiOnsiaW…

小红书笔记评论采集全攻略:三种高效方法教你批量导出

摘要&#xff1a; 本文将深入探讨如何利用Python高效采集小红书平台上的笔记评论&#xff0c;通过三种实战策略&#xff0c;手把手教你实现批量数据导出。无论是市场分析、竞品监测还是用户反馈收集&#xff0c;这些技巧都将为你解锁新效率。 一、引言&#xff1a;小红书数据…

项目实战_表白墙(简易版)

你能学到什么 一个比较简单的项目&#xff1a;表白墙&#xff08;简易版&#xff09;&#xff0c;浏览器&#xff1a;谷歌升级版将在下个博客发布 效果如下 正文 说明 我们是从0开始一步一步做这个项目的&#xff0c;里面的各种问题&#xff0c;我也会以第一人称视角来解…

flask mysql数据迁移

flask 数据迁移 在Flask中使用数据库迁移&#xff0c;通常我们会结合SQLAlchemy和Alembic来管理数据库的迁移。以下是一个基本的数据迁移流程&#xff1a; 安装Flask-Migrate&#xff1a; pip install Flask-Migrate 配置Flask应用和数据库&#xff1a; from flask import Fla…

yolov10在地平线旭日X3派上的部署和测试(Python版本和C++版本)

0、搭建开发环境 当前的测试根据一下的步骤并修改源码是可以实现yolov8的板端运行&#xff0c;如果不想再搭建环境和测试代码bug上浪费更多的时间可以直接获取本人的测试虚拟机&#xff0c;所有的测试代码、虚拟环境和板端测试工程以全部打包到了虚拟机&#xff0c;需要的可以…

[C++] 小游戏 能量 1.0.3 版本 zty出品

大家好&#xff0c;今天zty带来的是能量的1.0.3版本&#xff0c;此版本可以存档&#xff08;自动的&#xff09;&#xff0c;用于保存战绩&#xff0c;在运行时会跳出主菜单&#xff0c;而不是直接开始游戏&#xff0c;辅助游戏的函数大小总和已经超过了游戏主体&#xff0c;zt…

01-IaC CloudFormation的必要性和使用方法

前言 将应用的需求、开发、测试、部署和运营统一起来,基于整个组织的协作和应用架构的优化,实现敏捷开发、持续交付和应用运营的无缝 集成。帮助企业提升IT效能,在保证稳定的同时,快速交付高质量的软件及服务,灵活应对快速变化的业务需求和市场环境。 1 持续交付 持续交…