Hi, We have a svn repository with many files (more than 30'000), and need to have the HEAD version exported to a filesystem, whenever a commit is done.
Currently, we have implemented this with a post-commit script that does a "svn update", but the script is rather slow. The reason is that "svn update" apparently checks the whole tree for any local changes. In our case, we can however guarantee that no changes are done in the working copy. I was thinking that we could use something like a "svn update --readonly", where svn doesn't any check anything on the working copy, but just applies any changes committed since the last update. An alternative would be to implement a special mode for "svn export", which writes a file with the exported revision number (".revision" in the root directory, for example), and a "svn export-update" that only fetches any changed files between the last exported version and HEAD. It could even be a completely separate binary which uses libsvn... What are your thoughts on this? We have computer engineering students that could be put on such a project, but it would be great to have some guidance on whether this is a good idea and what you would recommend doing. Thank you and cheers David