Subversion Input Filters
From NAMIC Wiki
Home < Subversion Input Filters
Subversion allows filtering of files that are commited allowing to verfiy validity of certain things. This can be used to do the commit checks for tabs, new-lines, ...
To enable this feature, create a file:
/path/to/subversion/tree/hooks/pre-commit
There should already be already directory hooks with several files in them.
I used python to write a pre-commit hook, but in general you can use anything.
In the script, the first argument is repository (REPOS) and the second number is a transaction number (TXN). With these two arguments, you can call command svnlook. For example:
svnlook command -t "TXN" "REPOS" args
Some commands are:
- log - Get log information (this is comment given when doing commit)
- author - Get author information
- changed - List of files that were changed
- dirs-changed - List of directories that changed
- date - Time of commit
- diff - List of changes in diff format
- info - Get all the information about the commit (but diff)
- cat - Display the file after the change
- history - Display the history
- tree - Display the tree hierarchy