git - 将标志添加到要在挂钩中使用的 git 命令
问题描述
我有一个 git 钩子,每当我推送时都会运行测试:
.git/hooks/pre-push
cd $GOPATH/src/lab.omitted.com/omitted/tools/tribute/
./run-newman-non-dkr.sh
我想在那里有一个标志,这样我就可以在不运行测试的情况下推送:
if [[ $* == *--skiptest* ]]
then
echo Skipping Newman Test
else
echo --- Running Newman Test
cd $GOPATH/src/lab.omitted.com/omitted/tools/tribute/
./run-newman-non-dkr.sh
fi
但是我不能git push
带着那个标志跑
$ git push --set-upstream origin feature/417/itp-update --skiptest
error: unknown option `skiptest'
有没有解决的办法?
解决方案
您不能在推送中添加标志。
但是你可以告诉 git 忽略这个钩子
使用
--no-verify
,完全绕过钩子。
git push --no-verify
否则,您可以执行以下操作之一:
- 编写具有所需配置的配置文件并在您的挂钩中读取它
- 使用所需的标志向您的提交添加注释
git notes add ....
并在您的钩子中再次阅读 - 将您的代码推送到特定分支并跳过对该分支的测试,如果您希望合并它,请尽可能使用拉取请求(不知道您的服务器是什么)
- 提交一个特定的文件,如果它存在,只要 git 在提交中看到这个文件就运行测试
推荐阅读
- linux - 在目录中迭代以备份 linux 中的 sqlite 表
- sql-server - RANGE 窗口框架的 ORDER BY 列表的总大小为 8010 字节。支持的最大大小为 900 字节
- java - 在方向图中从 JAVA 添加具有属性的类顶点以及另一个类顶点的列表等
- unity3d - 统一网络。transform.setparent() 在 clinet 端不起作用
- excel - 无法保存Openpyxl python3修改的现有excel文档
- sql - 如何通过在任何插入的两个值之间改组来将列上的两个值指定为 DEFAULT
- delphi - delphi中的OnDrawCell过程访问冲突
- java - 如何将图像保存到文件夹并将链接保存到 mySQL 数据库
- bash - 在 bash 中编写一个可移植的通用确认函数——你能改进它吗?
- angular - Css 不适用于 Angular 6