Is there a good way to get the log for a path excluding changes that
only affected svn:mergeinfo? We have a project with several one-off
copies of files, where changes to the copyfrom-path get merged in
periodically. We then have a feature branch that gets merges from
trunk. When we merge to the feature branch, the one-offs get updated
svn:mergeinfo since they already have the svn:mergeinfo from the
copyfrom-path. Because of this, svn ls, svn info, and svn log show the
path for revisions where only the svn:mergeinfo changed; svn ls and svn
info become useless for finding the latest revision for a path.
In order to get around this, we end up performing multiple svn diffs (a
summarize of repo_at_rev to keep paths with text changes followed by a diff
per path to determine if the only property change was to
svn:mergeinfo). Luckily, the information can be cached once computed.
While the decision to use a standard property for svn:mergeinfo is an
elegant solution in terms of using functionality already available, it
has awkward side-effects like the one mentioned above. Since it is a
special property (as now reflected by options that follow merge
history), it would be nice to also have options to ignore the property
for the purposes of log, info, diff, ls, etc. Maybe this already exists
and I'm missing something?
Thomas S. Trias
Artizan Internet Services
Received on 2010-03-15 16:48:45 CET