Bitbucket 服务器:在推送修改特定文件夹内文件的提交时发送电子邮件

Gas*_*n K 5 git bitbucket-server

当有人推送一个或多个修改文件夹内文件的提交时,有什么方法可以发送电子邮件吗?

我有一个文件夹,其中包含的文件包含在大多数提交中不应更改的通用代码。但是,如果有人对这些文件进行更改,我想触发电子邮件/松弛通知。

可以用BitBucket服务器来做吗?也许有一个插件可以让我做到这一点?

Von*_*onC 2

如果您谈论的是 bitbucket.org,即您无法直接访问/控制的 Git 存储库托管服务器,则需要设置一个 Webhook

该 webhook 将调用您选择的 Web 侦听器,该侦听器可以检查推送 JSON 负载,并将新提交提取到本地存储库中。

从那里,您可以进行比较,并检查特定目录内容是否已更改

是的,正如所评论的,Jenkins 服务器(您控制的)可以通过JENKINS/Generic Webhook Trigger Plugin用作 webhook 侦听器。

OP Gaston K在评论中提到:

我使用的是 bitbucket 服务器,它基本上是相同的,但我猜是在我这边运行的。

然后,如果您有权访问服务器,则可以设置接收后挂钩:请参阅“ Atlassian / BitBucket / 使用存储库挂钩”。您将使用存储库挂钩插件模块来定义类型为“ PostRepositoryHook”的挂钩

然后,您可以使用Atlassian SDK编写一个实现该类型的类:

public class NotificationPostRepositoryHook implements PostRepositoryHook<RepositoryHookRequest> {
Run Code Online (Sandbox Code Playgroud)

(例如,请参阅从头开始创建新插件以开始)