Re: How to watch files in a Git repository
- From
Son Luong Ngoc <sluongng@gmail.com>
- Date
- Jun 9, 2022, 08:33 UTC
- Message-ID
- <7E6C6D02-8C56-48B5-B178-2F6B66542DBC@gmail.com>
- In-Reply-To
- <68627d29-8ffd-2e22-46ca-c28c9e980177@gmail.com>
Hi Diez,
Show 13 quoted lines
> On Jun 6, 2022, at 6:04 PM, R. Diez <rdiez1999@gmail.com> wrote: > > Hi all: > > I would like to get a notification e-mail when certain files or directories change in a Git repository. > > In the good old CVS days, you could just 'watch' a file with your favourite CVS GUI. > > Some online services like GitHub offer their own notification mechanism, but I would like something generic. I am not looking for a hook solution, because the Git repositories may not be mine, so I may only have read access. > > The idea is that I can set up a cron job to periodically pull a repository, and run a script to generate the e-mails from the commit history. Any new commits which match the desired branch and modify the desired files and/or directories would trigger the notifications. > > I've searched the Web, but couldn't find anything straightforward.
I would encourage you to try SourceGraph’s CodeMonitoring feature (1). You can configure a search query which target a file path inside a repository, then it will send email to you when there are new commits/diffs touching those files.
I have no affiliation with them except for being a happy end user. In fact, I used SourceGraph extensively while studying git/git codebase.
Show 5 quoted lines
> > If there is nothing of the sort, I could write my own script in Bash or Perl. I can handle cron and sending e-mails, but I do not know much about Git's internals. Could someone provide a few pointers about how to code this? I would expect there is some command to list commits, and all files touched by a particular commit. And there would be some way to interface with Bash or Perl, which does not need parsing complicated text output from Git. > > Thanks in advance, > rdiez
Cheers, Son Luong
(1): https://docs.sourcegraph.com/code_monitoring