Andrej Manduch <amand...@gmail.com> wrote:
> * this fixes 'git svn info `pwd`' buggy behaviour

Good catch, the commit could use a better description, something like:
--------------------------- 8< ----------------------------
Subject: [PATCH] git-svn: "info" checks for dirs more carefully

This avoids a "Reading from filehandle failed at ..." error when
running "git svn info `pwd`".

Signed-off-by: Andrej Manduch <amand...@gmail.com>
--------------------------- 8< ----------------------------

While your patch avoids an error, but the output isn't right, either.
I tried it running in /home/ew/ruby, the URL field is bogus:

    ~/ruby$ git svn info `pwd`
    Path: /home/ew/ruby
    URL: svn+ssh://svn.ruby-lang.org/ruby/trunk/home/ew/ruby
    Repository Root: svn+ssh://svn.ruby-lang.org/ruby
    Repository UUID: b2dd03c8-39d4-4d8f-98ff-823fe69b080e
    Revision: 46901
    Node Kind: directory
    Schedule: normal
    Last Changed Author: hsbt
    Last Changed Rev: 46901
    Last Changed Date: 2014-07-22 19:06:12 +0000 (Tue, 22 Jul 2014)

The URL should be:

    URL: svn+ssh://svn.ruby-lang.org/ruby/trunk

It's better than an error, but it'd be nice if someone who uses
this command can fix it (*hint* :).

> --- a/git-svn.perl
> +++ b/git-svn.perl
> @@ -2029,7 +2029,7 @@ sub find_file_type_and_diff_status {
>       my $mode = (split(' ', $ls_tree))[0] || "";
>  
>       return ("link", $diff_status) if $mode eq "120000";
> -     return ("dir", $diff_status) if $mode eq "040000";
> +     return ("dir", $diff_status) if $mode eq "040000" or -d $path;

"or" has a lower precedence than "||", so I would do the following:

        return ("dir", $diff_status) if $mode eq "040000" || -d $path;

The general rule I've learned is to use "||" for conditionals and
"or" for control flow (e.g. do_something() or die("...") ).

I can take your patch with the above changes (no need to resend),
but I'd be happier to see the URL field corrected if you want
to reroll.

Thanks.
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to