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

Re: subversion can't commit project under symlink?

From: Rob van Oostrum <rvanoo_at_gmail.com>
Date: Fri, 18 Dec 2009 14:06:01 -0500

On Fri, Dec 18, 2009 at 1:56 PM, Steve Lefevre <slefevre_at_restcon.net> wrote:

> On 12/18/2009 1:41 PM, Rob van Oostrum wrote:
>
>
>> Should I file this as a bug report? It seems to me that svn should be
>> smart enough to figure this out -- although, that would take some thinking.
>> Svn is able to handle other operations intuitively, such as status.
>>
>>
>
> No, this isn't a bug IMO. SVN is designed to support versioning symbolic
> links. Committing changes to/under it is a scenario where it has to break
> directory/link transparency because it's ambiguous what you're telling the
> client to do (i.e. creating the symbolic link vs. committing the changes in
> the location the new link is pointing to).
>
>
> Well, let me argue the point a bit.
>
> You would never create a symbolic link with a commit statement, right? You
> could only do it using add? If I make a symbolic link, and try to commit it,
> I get a "not under version control" error.
>
> In other words, the flow control that svn would need when it sees "svn
> commit symbolic_link" is
>
> if already_in_project_directory && symbolic_link_is_under_version_control
> commit normally
> else if
> check if the symbolic link is itself a subversion project, and commit
> it
> else
> fail with warning.
>
> In other words, I'm already getting an error that the file isn't under
> version control -- there's no ambiguity. Why not at that point do an
> additional check to see if I'm wanting to commit a subversion project
> contained within a symbolic link to a directory, before failing?
>
> Or maybe I'm not understanding -- can you give an example of the scenario
> where the ambiguity arises?
>
> --
> Steve Lefevre
> Lead Developer
> Restaurant Consultants, Inc.
> ( 614 ) 421-1441slefevre_at_restcon.net
>
> No, the error you're getting is that the parent directory of what you're
telling the client to commit is not a working copy. You can't commit a
symbolic link to SVN unless it lives inside a working copy, which in your
example it doesn't.

Telling the client to commit a symbolic link is fundamentally different from
telling it to recursively commit changes to a directory, which is why the
client behaves differently in each of these scenarios.

-Rob

------------------------------------------------------
http://subversion.tigris.org/ds/viewMessage.do?dsForumId=1065&dsMessageId=2431564

Please start new threads on the <users_at_subversion.apache.org> mailing list.
To subscribe to the new list, send an empty e-mail to <users-subscribe_at_subversion.apache.org>.
Received on 2009-12-18 20:06:50 CET

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

This site is subject to the Apache Privacy Policy and the Apache Public Forum Archive Policy.