[svn.haxx.se] · SVN Dev · SVN Users · SVN Org · TSVN Dev · TSVN Users · Subclipse Dev · Subclipse Users · this month's index

RE: Can not do autoimic commit for deleted forlder and modification in some other folders/ files.

From: Sachin Deshpande <svd_at_4js.com>
Date: Thu, 24 Nov 2011 14:50:12 +0530

Hello Giulio,


                Thank you very much for your prompt reply.


                I have found a document on net that says changelists work
with files and not with Folders.


                Also tested it, svn cl skips folders. The output message is
Skipped 'foldername'


Thanks and regards,



From: Giulio Troccoli [mailto:giulio.troccoli_at_mediatelgroup.co.uk]
Sent: Thursday, November 24, 2011 2:38 PM
To: Sachin Deshpande
Cc: users_at_subversion.apache.org; 'Christophe Meyer'; 'Sandeep Gupta';
'Hans'; 'Thierry Vouriot'
Subject: Re: Can not do autoimic commit for deleted forlder and modification
in some other folders/ files.


On 24/11/11 07:47, Sachin Deshpande wrote:



                I am using SVN command line client 1.6.2 on windows.

                I have following folder structure













                I have perform following local operations


changed Folder1's property.

Modified File1

Deleted Folder2


I would like to do the commit of following

Property change in Folder1

Deleted Folder2


But don't want to commit the changes done in File1.


How can I do it with one svn commit command ( atomic commit ).


If we use


Svn commit --m "msg" "Trunk\Folder1" "Trunk\Folder2"


It will work properly but will also commit the changes in


To avoid it if we use


Svn commit --m "msg" --depth=empty "Trunk\Folder1" "Trunk\Folder2\File3"
"Trunk\Folder2\File4" "Trunk\Folder2"


Commit fails as it does not get the File3, file4 on disk.


Svn commit --m "msg" --depth=empty "Trunk\Folder1" "Trunk\Folder2"


Commit fails as with error.

svn: Cannot non-recursively commit a directory deletion of a directory with
child nodes


Is this a bug or is there any way to perform atomic commit in the scenario


Thanks and regards,



I haven't tested this but my first idea would be to use changelists.

Add Folder1 and Folder2 to a changelist

svn cl test Trunk\Folder1
svn cl test Trunk\Folder2

and then remove File1 from it

svn cl test --remove Trunk\Folder1\File1

Check that the changelist contains exactly what you want

svn st

Finally, commit using the changelist

svn ci --changelist test -m "msg"

As I said, I haven't tested this. Good luck

Received on 2011-11-24 10:21:03 CET

This is an archived mail posted to the Subversion Users mailing list.