You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@subversion.apache.org by scirocco paptimus <pa...@gmail.com> on 2007/08/08 08:00:15 UTC

svn diff has bug

Hi
I think Subversion has bug (only on windows).

in case of emacs backup ~ files  exists,
svn diff abort.

though it is a specification of  Windows API...

thanx in advance.

% svn diff  -r{2006-09-01}:{2006-10-01} *.cpp
svn: 'xxxxxx.cpp~' is not under version control

% dir xxxxxx.*
2007/07/31  11:43            81,532 xxxxxx.BAK
2007/07/31  12:04            81,394 xxxxxx.cpp
2007/07/31  12:04            81,394 xxxxxx.cpp.~BASE~
2007/07/31  12:03            81,394 xxxxxx.cpp.~BASE~~
2007/07/31  11:43            81,522 xxxxxx.cpp~
2007/07/31  20:50           118,035 xxxxxx.obj

% svn st -vq | grep -i bxsect
            9023     9023 myname       xxxxxx.cpp

% ver
Microsoft Windows XP [Version 5.1.2600]

% svn --version
svn, version 1.4.4 (r25188)
   compiled Jun  8 2007, 18:49:42

---
% cvs diff -D 2006/09/01 -D 2006/10/01 *.cpp
%

Re: svn diff has bug

Posted by scirocco paptimus <pa...@gmail.com>.
Thank you for  your answer.

cmd.exe (=windows shell) does not expand command line(like *.cpp).
then probably svn.exe expand file names via windows API.
windows API (FindFistFile/FindNextFile) indistinct /\.cpp$/ and /\.cpp.*/,
there are API spec (or trap).

Re: svn diff has bug

Posted by Ryan Schmidt <su...@ryandesign.com>.
On Aug 8, 2007, at 03:00, scirocco paptimus wrote:

> I think Subversion has bug (only on windows).
>
> in case of emacs backup ~ files  exists,
> svn diff abort.
>
> though it is a specification of  Windows API...
>
> thanx in advance.
>
> % svn diff  -r{2006-09-01}:{2006-10-01} *.cpp
> svn: 'xxxxxx.cpp~' is not under version control
>
> % dir xxxxxx.*
> 2007/07/31  11:43            81,532 xxxxxx.BAK
> 2007/07/31  12:04            81,394 xxxxxx.cpp
> 2007/07/31  12:04            81,394 xxxxxx.cpp.~BASE~
> 2007/07/31  12:03            81,394 xxxxxx.cpp.~BASE~~
> 2007/07/31  11:43            81,522 xxxxxx.cpp~
> 2007/07/31  20:50           118,035 xxxxxx.obj

[snip]

My understanding is that the shell expands "*.cpp" before invoking  
the svn utility. The svn utility never sees that you typed "*.cpp";  
it just sees the full expanded list of files. If your shell is  
expanding "*.cpp" to include a file ending in ".cpp~" that sounds  
like a bug in the shell.

You could try "dir *.cpp" and see what files it is selecting. If it  
includes your .cpp~ file, then there's the problem. And if it  
doesn't... then I'm not sure.

> % cvs diff -D 2006/09/01 -D 2006/10/01 *.cpp
> %

I have no experience with cvs (or the Windows shell, really) so I  
can't comment on why cvs is behaving differently for you.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@subversion.tigris.org
For additional commands, e-mail: users-help@subversion.tigris.org