pre-commit-hook相关内容

您如何访问 Mercurial 进程内挂钩中的提交消息?

我一直在努力 def debug_hook(ui, repo, **kwargs):changectx = 回购 [无]ui.status('change.desc: %s\n' % changectx.description())返回真 但它总是打印一个空字符串.这是因为它是一个预提交钩子并且消息还不可用吗?还是我只是遗漏了一些明显的东西? 解决方案 事实证明,我最初的方法有两个问题 ..
发布时间:2021-11-15 02:43:53 其他开发

为什么预提交钩子让文件“半阶段"?

我正在尝试为格式化代码设置一个预提交挂钩,这将格式化文件并在提交中包含更改.有几个脚本说他们这样做,但我试过的那些有同样的问题:他们让文件“半阶段". 例如参见这个脚本.它在修改文件后正确添加文件,并表示它应该可以在 Windows 上运行.当钩子为其他人工作时,钩子对我不起作用这一事实让我相信我的环境出了问题. 当钩子用多余的换行符修改文件时会发生这种情况: $ git statu ..
发布时间:2021-09-25 20:23:31 其他开发

如何在 windows 上运行的 Visualsvn 服务器预提交钩子中调用 python 脚本

我为 pre-commit hook 实现了一个 python 脚本,以检测提交消息、作者、更改的路径,然后在特定情况下抛出异常或错误. 我想在VisualSVN服务器Pre-commit Hook中设置这个脚本pre-commit.py在 Hooks 中使用这个命令 C:\Users\momo\Desktop\pre-commit.py %1 %2 当我想提交时,我收到了这个错误 Ac ..
发布时间:2021-09-01 20:05:32 Python

与另一个路径/修订版的差异事务树

在预提交脚本中,如何获取已提交更改与同一存储库中任意路径/修订版的差异? 例如,当提交对 /trunk 中的文件的更改时,我想获得提交的 /trunk(尚未修订)的差异,比如说,/branches/feature_x(它是 /trunk 的一个分支). 据我所知,svnlook diff 仅显示该事务提出的更改,而 svn diff 仅适用于修订而不适用于事务. 一种蛮力方法是为 ..
发布时间:2021-09-01 19:58:41 其他开发

运行 SVN 预提交挂钩时如何向用户发送标准输出

我有一个 SVN 的预提交钩子,它运行错误检查程序并在出现问题时中止提交.如果出现问题,stderr 被重定向到发起提交的用户.但是,即使没有发现问题,我也想从错误检查程序发送用户输出,以便通知用户错误检查程序运行并且没有发现问题.如何使用 SVN 预提交钩子来实现? 解决方案 Subversion hooks 吃掉他们的 STDOUT.一旦脚本运行,就没有 STDOUT.您甚至不能让预提 ..
发布时间:2021-09-01 19:56:26 其他开发

在预提交脚本中检测分支重新集成或合并

在预提交脚本中,是否可以(如果可以,如何)识别源自 svn merge 的提交? svnlook changed ... 显示已更改的文件,但不区分合并和手动编辑. 理想情况下,我还想区分标准 merge 和 merge --reintegrate. 背景: 我正在探索使用预提交挂钩为我们的项目实施 SVN 使用政策的可能性. 其中一项政策规定,某些目录(例如/tru ..

如何创建 SVN 提交消息模板和挂钩以进行验证

我使用 Visual SVN Server 和 Tortoise SVN(客户端)进行源代码控制.我希望所有开发人员都对签到记录采用统一的格式. 例如,我希望他们的提交消息默认为... 简介: 开发者名称:(预填充) 审核人: [错误 ID]: [更改错误状态]: 已知问题: 受影响的文件:(预填充) 将来我希望 [Bug Id] 和 [Bug ..

自动为新文件添加 svn 关键字属性(服务器端)

我想在提交新文件时向文件添加 svn 属性(如 svn:keyword=Id Date Rev Author). 要使其工作,可能有两个主要选项: 客户端:更改 svn 客户端配置中的 autoprops 服务器端:用 commit-hooks 做一些魔术 客户端并不总是可取的,因为需要控制客户端设置.我想在服务器上解决这个问题.如何才能做到这一点. 解决方案 Subv ..

如何从 Perl 中的 Subversion 预提交钩子访问提交的文件?

我需要执行以下操作: 在 Perl 中编写预提交钩子 Hook 应该检查所有提交的文件是否存在某些文本,如果找不到该文本则失败 基本上,我需要一个读取正在提交的文件的 Perl 钩子示例. 我真的在寻找代码最少的优雅解决方案. 注意事项:Hook 应该使用 svnlook 或其他更好的方式来查找文件. 解决方案 预提交钩子: 我的 $repos = shif ..
发布时间:2021-06-15 20:50:43 其他开发

Perforce 客户端预提交钩子

我们使用 perforce 作为 Visual Studio 解决方案的源代码控制.使用 P4 和 P4V.是否可以添加客户端预提交挂钩?例如确保“调试器"这个词;*.js 文件中不存在.可以在谷歌找到一些东西.谢谢. 解决方案 Perforce 触发器可用于强制执行此类策略,但它们在服务器中运行,而不是在客户端运行.因此,我所知道的大多数网站都会强制执行一项规则,例如您在服务器中使用更改 ..
发布时间:2021-06-15 18:56:11 其他开发

在预提交挂钩中执行git add后,为什么索引未更新?

我有一个预提交的挂钩, 检查是否需要更新我的版本文件 修改所述文件 对此文件执行git添加 这使我可以将更新的版本文件添加到同一提交中.我唯一的问题是,在挂钩运行后,工作树和HEAD将使用新版本文件进行更新,但索引不是.我需要手动暂存索引的版本文件以反映更改. 我将git更新为2.3.4,但这并不能解决任何问题. 我在这里想念什么吗? 更新 版本文件的当前设 ..
发布时间:2021-05-10 20:46:09 其他开发

在Windows批处理文件中包装SVN Python钩子

我有一个SVN预提交钩子,该钩子先前位于Linux服务器上.我现在正在尝试将内容移至Windows(Server 2003)服务器. 此钩子是用Python编写的,在Linux上运行良好,顶部带有#!/usr/bin/env python 行.但是Windows无法以这种方式工作,并且需要将钩子作为批处理文件(或其他格式,但仍然不是Python). 重要的是,将参数传递给脚本,并将退出 ..
发布时间:2021-04-15 18:42:12 其他开发

Bash确认不会等待用户输入

我正在尝试使用bash脚本实现确认提示,但是由于某些原因,提示将不等待用户输入.我已经尝试了很多例子,但到目前为止还没有运气.如果有任何不同,我将使用MacOS. 仅尝试了几个示例(所有副本都粘贴并粘贴了其他答案): #!/bin/bash read -p "Are you sure? " -n 1 -r echo # (optional) move to a new line ..
发布时间:2020-11-15 19:04:20 其他开发

预提交钩子文件暂存以进行提交

如果您在Git中有一个预提交钩子来创建(或修改)文件,是否需要暂存该文件才能提交? 例如,如果我有一个预提交钩子来创建某些代码的缩小版本,我是否需要git add该缩小版本才能将其包含在提交中? 解决方案 是的,您必须将文件自己添加到索引中. pre-commit挂钩允许您在提交之前运行一些命令,这并不意味着git会跟踪您的挂钩(或任何外部)所做的修改. 话虽如此,我不推荐这 ..
发布时间:2020-11-15 19:02:02 其他开发

在预提交钩子中调用git

例如,当我执行git pre-commit钩子时,我得到奇怪的结果 git diff --name-only在终端中似乎给出了不同的结果 在.git/hooks/pre-commit 中执行时 所以我的问题是: 我可以在git hooks中调用git吗? 如果1.正常:如果我执行git commit,则何时确切调用预提交钩子? -am"bla"?特别是git是否先进行登台,然后再调用预 ..
发布时间:2020-11-15 07:03:09 其他开发

Git在pre-commit钩子中添加而不是要提交的登台文件

我编写了一个预提交挂钩,用于编译我的项目并将生成的文件添加到提交中. 这是一个JavaScript项目,我正在使用husky,但是我也尝试编辑.git/hooks/pre-commit,并且文件未添加到提交中.如果我取消提交,则可以看到已添加文件,但是由于某种原因,这不适用于当前提交. 我的预提交挂钩看起来像: const shell = require('shelljs'); ..
发布时间:2020-11-15 04:18:13 其他开发