git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Git version of some common SVN hooks?

From
Dun Peal <dunpealer@gmail.com>
Date
Oct 4, 2010, 19:43 UTC
Message-ID
<AANLkTimPGtH9xCh8rLSMAa2KDNOEDUt49qFK7p==aZho@mail.gmail.com>
Hi,
I'm porting a large and active repository from SVN to Git.

To provide the developers with the same features, I need the Git version of the following common hooks:

1. svn2cl: the Subversion ChangeLog Generator. Basically a script that
sends a readable email listing a range of commits, showing just a
short summary for each commit: author name, timestamp, hash, paths
modified, commit message.
2. Hook to reject any commit containing a path with non-ASCII characters.
3. Hook to reject any commit causing the repository to contain two or
more paths that differ from each other only in letter case. For
instance, a commit adding foo/bar.py would be rejected if foo/Bar.py
was added as part of that same commit, or already existed in the repo.
4. Hook to trigger an action based on which path was committed to. For
example, if a developer commits into REPO_ROOT/foo, send an email to
address foo@somedomain, whereas a commit to REPO_ROOT/bar will send an
email to bar@somedomain.

I'm hoping there are Git versions of these hooks already written, but if now any leads about implementing them would be appreciated.

Our full setup btw is a large repository hosted on a local instance of Gitorious. All our users use Git >= 1.7, although they work on all 3 operating systems: Linux, OS X, Windows.

Thanks, D
Next: Chris Packham
Message 1 of 2 in “Git version of some common SVN hooks?”
  1. Dun PealOct 4, 2010
  2. Chris PackhamOct 4, 2010

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.