Subject: Re: git-svn {show,create}-ignore chokes upon subdirs

From: Sam Vilain <[email-masked]>
Date: Wed, 28 May 2008 20:34:23 +1200

Nikolaus Schulz wrote:
> Hi, 
> 
> when importing subversion repositories into git, git-svn show-ignore and
> create-ignore choke when scanning project subdirectories.  For example,
> with the sequence
> 
>  git-svn init -s http://svn.red-bean.com/repos/producingoss producingoss-git-svn
>  cd producingoss-git-svn
>  git-svn fetch
>  git-svn create-ignore 
> 
> the last command prints this: 
> 
>  HTTP Path Not Found: PROPFIND request failed on '/repos/producingoss/!svn/bc/1465/ca': '/repos/producingoss/!svn/bc/1465/ca' path not found at /home/nikolaus/nfs/nsbp/git/git/git-svn line 1897
> 
> Revision 1465 is the latest subversion revision of the project.  git-svn
> create-ignore stages a correct .gitignore in the top level directory, then
> aborts with the same error.  I have tested this with two svn projects, the
> result is identical.  Bisecting suggested that this is broken since commit
> 01bdab84e31763a98206c31cf99b9dc3cb221356.

It helps to include the breaking change's details in the message in
reports like this.  Here it is:

From: Benoit Sigoure <[email-masked]>
Subject: git-svn: add a generic tree traversal to fetch SVN properties

    * git-svn.perl (&traverse_ignore): Remove.
    (&prop_walk): New.
    (&cmd_show_ignore): Use prop_walk.

[ew: This will ease the implementation of the `create-ignore',
     `propget', and `proplist' commands]

Signed-off-by: Benoit Sigoure <[email-masked]>
Acked-by: Eric Wong <[email-masked]>
Signed-off-by: Shawn O. Pearce <[email-masked]>

As a side note, "svn:mergeinfo" is rapidly becoming an 'interesting'
property and should probably be added to the list.  However, I think it
probably needs to go somewhere like do_fetch; I'll follow-up separately
about that.

Sam.