Github文件更改通知

时间:2013-10-03 21:45:25

标签: git github post-commit-hook

有没有办法通知人们更改某些文件?具体来说,我想跟踪* .sql文件的更改,并通知我们的开发人员进行更改。如何配置post commit hooks以通知?

5 个答案:

答案 0 :(得分:17)

如果您希望人们通过电子邮件收到通知,并且您希望他们管理自己的通知,那么https://app.github-file-watcher.com/应该可以做到 - 它监控任何公共回购,并通过电子邮件通知您任何更改文件,特定文件或符合条件的某些文件。

答案 1 :(得分:7)

git diff-tree

中使用post-receive hook
 git diff-tree --name-status -rz

您可以grep结果以检查是否修改了某些文件(状态为“M”),如in this answer所述。
您可以使用--name-status选项find many examples on gist.github.com this one {/ 3}}。

答案 2 :(得分:1)

GitHub(截至2019年12月12日)在预览中具有一些新的通知功能,包括CODEOWNERS的概念,该概念允许相当精细地控制如何配置通知以进行更改。

需要启用“预览”功能才能工作,但是要做的就是在根目录CODEOWNERSdocs/中创建一个.github/文件。

这是文档中的示例文件:

# This is a comment.
# Each line is a file pattern followed by one or more owners.

# These owners will be the default owners for everything in
# the repo. Unless a later match takes precedence,
# @global-owner1 and @global-owner2 will be requested for
# review when someone opens a pull request.
*       @global-owner1 @global-owner2

# Order is important; the last matching pattern takes the most
# precedence. When someone opens a pull request that only
# modifies JS files, only @js-owner and not the global
# owner(s) will be requested for a review.
*.js    @js-owner

# You can also use email addresses if you prefer. They'll be
# used to look up users just like we do for commit author
# emails.
*.go docs@example.com

# In this example, @doctocat owns any files in the build/logs
# directory at the root of the repository and any of its
# subdirectories.
/build/logs/ @doctocat

# The `docs/*` pattern will match files like
# `docs/getting-started.md` but not further nested files like
# `docs/build-app/troubleshooting.md`.
docs/*  docs@example.com

# In this example, @octocat owns any file in an apps directory
# anywhere in your repository.
apps/ @octocat

# In this example, @doctocat owns any file in the `/docs`
# directory in the root of your repository.
/docs/ @doctocat

答案 3 :(得分:1)

我知道这确实是一个老问题,但是这是一个可以通过回购上的github webhook部署的解决方案。您还可以自定义和更改代码以查找特定的文件模式,并通过电子邮件,闲置,文本或其他方式通知您。希望这会有所帮助。

这是它的代码: https://github.com/DevScoreInc/samples/tree/master/github-file-monitor

这里是一个演示,演示了如何配置它: https://youtu.be/6HgxIkT8EQ4

答案 4 :(得分:0)

我知道已经有一段时间了,但是当我寻找类似的东西时,我偶然发现了这个线程。我研究了Cooper的GitHub File Watcher,但它不适用于私有存储库,也不是开源的。

因此,我最终构建了自己的解决方案:https://github.com/jesalg/commit-hawk。以防万一有人还在寻找这样的工具。