On Sep 9, 2008, at 8:28 PM, Hyrum K. Wright wrote:
> G. T. Stresen-Reuter wrote:
>> Hi,
>>
>> I'm working on a system that deploys the contents of repositories to
>> development servers. I'll be using cURL to update the servers. I was
>> hoping to use svn log --xml and XSLT to create the shell scripts
>> required to update the servers, but I soon realized that the
>> output of
>> paths using svn log --xml does not appear to be in any order. svn log
>> (without the --xml option) properly lists the order in which files
>> need
>> to be added/deleted, etc.
>>
>> This issue was reported in 2006 (but maybe not to the right place?)
>> http://svn.haxx.se/users/archive-2006-04/0949.shtml
>>
>> Unfortunately, there's no answer to that email (although it seems
>> fairly
>> clearly written).
>>
>> I'm wondering if anyone knows of a workaround, if this is a bug,
>> or if
>> the order simply doesn't matter (or if I'm just an idiot and missing
>> something obvious).
>
> Can you provide a specific example? Perhaps a reproduction recipe
> against
> Subversion's own repository?
>
> Thanks,
Happy to oblige. Note that in the non-xml output, build.conf is the
second line, but in the xml output, it is the fifth line. This
becomes an issue for my specific project when updating directories: I
can't add files to a directory that hasn't been created yet, so the
A /trunk/my_directory has to come before A /trunk/my_directory/
some_file.txt and that does not always seem to be the case (unless
I'm missing something or just not paying attention).
Thanks in advance for taking a look at this.
Sincerely,
Ted S-R
(sample output follows)
$ svn log -r32901 http://svn.collab.net/repos/svn/trunk/ -v -q
------------------------------------------------------------------------
r32901 | julianfoad | 2008-09-04 18:42:49 +0100 (Thu, 04 Sep 2008)
Changed paths:
M /trunk
M /trunk/build.conf
M /trunk/notes/tree-conflicts/requirements.txt
M /trunk/subversion/include
M /trunk/subversion/libsvn_ra_neon/commit.c
M /trunk/subversion/libsvn_ra_serf/commit.c
M /trunk/subversion/libsvn_repos/commit.c
M /trunk/subversion/libsvn_subr
M /trunk/subversion/tests/cmdline/commit_tests.py
M /trunk/subversion/tests/libsvn_subr
M /trunk/tools/server-side/svn_server_log_parse.py
M /trunk/tools/server-side/test_svn_server_log_parse.py
M /trunk/www/development.html
M /trunk/www/issue-tracker.html
M /trunk/www/tasks.html
------------------------------------------------------------------------
$ svn log -r32901 http://svn.collab.net/repos/svn/trunk/ -v -q --xml
<?xml version="1.0"?>
<log>
<logentry
revision="32901">
<author>julianfoad</author>
<date>2008-09-04T17:42:49.986838Z</date>
<paths>
<path
action="M">/trunk/subversion/libsvn_repos/commit.c</path>
<path
action="M">/trunk/subversion/tests/cmdline/commit_tests.py</path>
<path
action="M">/trunk</path>
<path
action="M">/trunk/subversion/include</path>
<path
action="M">/trunk/build.conf</path>
<path
action="M">/trunk/tools/server-side/test_svn_server_log_parse.py</
path>
<path
action="M">/trunk/tools/server-side/svn_server_log_parse.py</path>
<path
action="M">/trunk/subversion/libsvn_ra_neon/commit.c</path>
<path
action="M">/trunk/subversion/libsvn_ra_serf/commit.c</path>
<path
action="M">/trunk/subversion/libsvn_subr</path>
<path
action="M">/trunk/www/issue-tracker.html</path>
<path
action="M">/trunk/subversion/tests/libsvn_subr</path>
<path
action="M">/trunk/www/development.html</path>
<path
action="M">/trunk/notes/tree-conflicts/requirements.txt</path>
<path
action="M">/trunk/www/tasks.html</path>
</paths>
</logentry>
</log>
---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe_at_subversion.tigris.org
For additional commands, e-mail: users-help_at_subversion.tigris.org
Received on 2008-09-09 22:06:10 CEST