Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: PATCH: Update VCS_INFO_detect_svn for Subversion 1.7



Akinori MUSHA wrote:
> The attached patch fixes vcs_info not working under a subversion 1.7
> working directory.
[...]
> -{ [[ -f ".svn/entries" ]] || [[ -f ".svn/format" ]] } && return 0
> -return 1
> +vcs_comm[detect_need_file]="entries format"
> +VCS_INFO_bydir_detect '.svn' || return 1

Oh yes, Subversion 1.7. If I understood things correctly, they put their
`.svn' sub-directory only into the root directory of the sandbox.

While the patch fixes detection for both 1.7 and before, we'll do the
same again (the directory traversal) in VCS_INFO_get_data_svn where the
system tries to find out, what the root directory of the sandbox is.
With 1.7 that won't be required, with 1.6 and before it is. So that
would be unnecessary work for 1.7.

I was kind of hoping to do this with a clever detection algorithm, which
would work for both versions and still reveal the sandbox's root
directory. So that we could scratch the root-retrieval from the
`_get_data_' function altogether.

The other way would be to look at "svn --version -q" and check if the
`_get_data_' function still needs to find the root directory. But I'd
actually like to avoid the additional `fork()'. (If you every tried
vcs_info on cygwin, you'll know what I mean.)

Ideas?

Regards, Frank



Messages sorted by: Reverse Date, Date, Thread, Author