You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@subversion.apache.org by Jani Averbach <ja...@jaa.iki.fi> on 2004/07/16 16:46:05 UTC

BUG: svn status, win32 and mixed case

Hi,

Please take look following two outputs of scripts in W2K (svn 1.0.5):

I think that the second 'svn st -uv' or 'svn st' is wrong because it
doesn't show F.txt as missing.

# svn st -uv version:
> svn up
At revision 2.
> svn st -uv
                2        2 JAV          .
                2        2 JAV          F.txt
Status against revision:      2
> move F.txt f.txt
# won't show missing F.txt
> svn st -uv .
?                                       f.txt
                2        2 JAV          .
                2        2 JAV          F.txt
Status against revision:      2
> del f.txt
> svn st -uv .
                2        2 JAV          .
!               2        2 JAV          F.txt
Status against revision:      2

# svn st version
>svn st -uv 
                2        2 JAV          .
                2        2 JAV          F.txt
Status against revision:      2
>move F.txt f.txt
# won't show missing F.txt
>svn st  .
?      f.txt
>del f.txt
>svn st  .
!      F.txt

This is really deceptive, and people has been bitten by this here
several times so far in following situation:

1) Open Visual Studio
2) Create MFC project 
   -> this will create a file named Resource.h
3) put all your hard work under version control
4) edit Resource.h with VS 
   -> VS will save it as resource.h
5) oops, resource.h isn't under version control, I will add it...
6) Now you have a problem

Definetly the first culprit is the point 4 and human factor in phase five won't
help, but it would be really nice if SVN would lend you a helping hand, and
report Resource.txt as missing, what it actually is.

After adding f.txt, you will get:
>svn st -uv  .
                2        2 JAV          F.txt
                3        3 JAV          f.txt
                2        2 JAV          .
Status against revision:      3

BR, Jani

P.S. I am heading away for 2 weeks, so I could not reply to this thread, but I will
check archives when I am back.

P.P.S. The script:

set repobase=C:/jav/tmp/svntest

svnadmin create test_repo
svn ls  file:///%repobase%/test_repo
svn mkdir -m "" file:///%repobase%/test_repo/trunk
svn co file:///%repobase%/test_repo/trunk wc
cd wc
echo F > F.txt
svn add F.txt
svn ci -m "F"
svn up
svn st 
move F.txt f.txt
svn st  .
del f.txt
svn st  .

-- 
Jani Averbach 

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

Re: BUG: svn status, win32 and mixed case

Posted by Greg Martyn <gm...@verizon.net>.
I'm not able to reproduce that. I'm running svn 1.0.6 on linux. Here's what I 
got:

[greg@linuxcomp Desktop]$ mkdir Testing
[greg@linuxcomp Desktop]$ cd Testing/
[greg@linuxcomp Testing]$ pwd
/home/greg/Desktop/Testing
[greg@linuxcomp Testing]$ repobase=/home/greg/Desktop/Testing
[greg@linuxcomp Testing]$ echo $repobase
/home/greg/Desktop/Testing
[greg@linuxcomp Testing]$ svnadmin create test_repo
[greg@linuxcomp Testing]$ svn ls file://$repobase/test_repo
[greg@linuxcomp Testing]$ svn mkdir -m "" file://$repobase/test_repo/trunk

Committed revision 1.
[greg@linuxcomp Testing]$ svn co file://$repobase/test_repo/trunk wc
Checked out revision 1.
[greg@linuxcomp Testing]$ cd wc/
[greg@linuxcomp wc]$ touch F.txt
[greg@linuxcomp wc]$ svn add F.txt
A         F.txt
[greg@linuxcomp wc]$ svn ci -m "F"
Adding         F.txt
Transmitting file data .
Committed revision 2.
[greg@linuxcomp wc]$ svn up
At revision 2.
[greg@linuxcomp wc]$ svn st
[greg@linuxcomp wc]$ svn st -uv
                2        2 greg         .
                2        2 greg         F.txt
Status against revision:      2
[greg@linuxcomp wc]$ mv F.txt f.txt
[greg@linuxcomp wc]$ svn st
?      f.txt
!      F.txt
[greg@linuxcomp wc]$ svn st -uv
?                                       f.txt
                2        2 greg         .
!               2        2 greg         F.txt
Status against revision:      2
[greg@linuxcomp wc]$ rm f.txt
rm: remove regular empty file `f.txt'? y
[greg@linuxcomp wc]$ svn st
!      F.txt
[greg@linuxcomp wc]$ svn st -uv
                2        2 greg         .
!               2        2 greg         F.txt
Status against revision:      2

I got the same results with "svn st" and "svn st -uv" as with "svn st ." and 
"svn st -uv ." I also tried doing an actual echo "F" > F.txt instead of touch 
F.txt, but that didn't change anything either. Maybe you just need 1.0.6? Did 
I miss something?

Also, just FYI, when you start lines with a >, my mail client thinks that it's 
a reply to a previous message, so it colors the line differently, making it a 
little weird to read. prompt> or something like that would be better for me, 
but it's a free internet, do what you want :)

--Greg

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