Hi all,

I'd like to file a bug in Subversion 1.9.1 and 1.9.0, but I'm not sure if it's 
a deliberate behavior.
The problem was not encountered in Subversion 1.7.6, which we used for a long 
time.
I didn't find anything concerning this issue in the change log.

Summary:
--------------
The "svn switch" command  updates a file's timestamp, if the property 
svn:keywords is set.

Subversion Version: 1.9.1, 1.9.0
-------------------------
svn, version 1.9.1 (r1698128)
   compiled Sep  1 2015, 19:50:43 on x86-microsoft-windows


Operating System: Windows 7 Professional, Service Pack 1
------------------------


Description:
---------------
If a file under subversion control has the property svn:keyword set and is 
switched to a different location in the repository, the timestamp of the file 
is updated to the current time.
If svn:keyword is not set, the file's timestamp is not updated.
This problem was not encountered in Subversion 1.7.6 we used for a long time 
before.
We have a problem with the new behavior, because our build-system (based on 
gmake) will compile more or less everything, after a tag has been created and 
the working copy is switched to that tag, because the file timestamps are 
updated.


To demonstrate the behavior I've built and attached a small Windows batch file 
(I renamed it test.b_t), you are able to execute simply on every PC. I have 
attached the output test.txt as well. I've shortened the output of the dir 
command a little bit, so that only the file date remains. The prompt is set to 
':'

To use the batch file, you have to change the switch commands to your specific 
repository location.
For simplicity, the switch command switches the file to itself. This is 
sufficient to demonstrate the problem.

Behavior:
-------------
1.) File foo.c is created and added to the repository.
2.) No properties have been automatically set.
3.) The files timestamp is shown by dir command
4.) After 1 minute wait the svn switch command is executed - The file date does 
not change, since svn:keywords is not set.
5.) After another minute the svn:keywords property is set and commited.
6.) After a wait of another minute, the switch command is executed again - the 
file's timestamp is  changed instantly.
7.) After another minute the the svn:keywords are deleted and committed.
8.) After a final wait the switch command is executed again and the timestamp 
is not changed.

Best Regards,

Dirk


-- 
Funkwerk Engineering GmbH
Dirk Wolfram
Max-Giese-Str. 22, 24116 Kiel, Germany
Phone: +49 431 990 818-22 Fax:+49 431 990 818-51, email: 
dirk.wolf...@funkwerk-sc.com
Location: Kiel, Local Court Kiel, HRB: 10441 KI
Managing Director: Jens-Torsten Langhammer 
 
Disclaimer:

Please be informed that the content of e-mails has just informative character.
Especially e-mails with commercial or contractual content will only be binding 
for
Funkwerk Engineering GmbH if this content is confirmed in writing by letter or 
fax
duly undersigned by two representatives of Funkwerk Engineering GmbH.

Es wird ausdrücklich darauf aufmerksam gemacht, dass die Inhalte von E-mails 
rein
informativen Charakter haben. Sie können keine geschäftserhebliche und/oder
rechtsverbindliche Wirkung entfalten. Funkwerk Engineering GmbH ist nur an den 
Inhalt der E-mails gebunden, wenn dieser schriftlich entweder durch Brief oder 
durch 
Fax unterschrieben von zwei Personen bestätigt wird.


:echo "Test"  1>foo.c 

:svn add foo.c 
A         foo.c

:svn commit -m "Added foo" foo.c 

:svn proplist foo.c 
######## No properties for foo.c #######

:dir foo.c 
15.09.2015  20:21                 9 foo.c

######### foo.c has been added to repository - and we wait 1 minute #######

:sleep 61 

:svn switch 
https://tetra.funkwerk-sc.com/test/project2/trunk/src/module2/test/foo.c foo.c 

:dir foo.c 
15.09.2015  20:21                 9 foo.c
######### foo.c has been switched #######

:sleep 61 

:svn propset svn:keywords "" foo.c 
property 'svn:keywords' set on 'foo.c'

:svn commit -m "Added empty property svn:keyword" foo.c 

:svn proplist foo.c 
Properties on 'foo.c':
  svn:keywords

:dir foo.c 
15.09.2015  20:21                 9 foo.c

######### foo.c now has property svn:keywords and we wait another minute #######

:sleep 61 

:svn switch 
https://tetra.funkwerk-sc.com/test/project2/trunk/src/module2/test/foo.c foo.c 

:dir foo.c 
######### foo.c has a new timestamp after switch - and we wait another 
minute#######

:sleep 61 

:svn propdel svn:keywords foo.c 
property 'svn:keywords' deleted from 'foo.c'.

:svn commit -m "Removed property svn:keywords" foo.c 

:dir foo.c 
15.09.2015  20:25                 9 foo.c
######## property svn:keywords removed - we wait 1 last minute########

:sleep 61 

:svn switch 
https://tetra.funkwerk-sc.com/test/project2/trunk/src/module2/test/foo.c foo.c 

:dir foo.c 
15.09.2015  20:25                 9 foo.c
######## No change of date after 1 Minute ########

Attachment: test.b_t
Description: test.b_t

Reply via email to