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

RE: SVN question

From: Bob Archer <bob.archer_at_amsi.com>
Date: Thu, 28 May 2009 11:34:56 -0400

>I have to put under version control four projects: a main project and three sub-projects. Every project has >its repository, cause we need different revision numbers between projects.

Perhaps this is your main problem. Why do you need separate revisions for each project? Perhaps you have blinders on for this issue and putting all the projects in the same repo so you can use file externals will ease your pain. That said...

># Main project which refers to:
># -libraries (single file es. scripting.dll)
># -features (composed by files stored in a specific structure es. Features)
>\MainProject
> scripting.dll # This is the library generated by ScriptingProject

>Question1 (refer to Note1): I need to refer to a specific file revision, with svn:externals there's a >problem: MainProject needs to refer to scripting.dll stored in ScriptingProject, external files references >works only in the same repository. I found only an alternative solution but it refers to a kind of links that >Windows doesn't support. Any suggestions?

First, I would not store scripting.dll in svn for the ScriptingProject. This is a binary build from this source. You should control the source not the binary. My suggestion don't use an external here. Have your build system check in a scripting.dll file into your MainProject when it is built, or when it is appropriate.

Is it at all possible to put the scripting.dll into a folder (lib) in main project. This would allow you to use externals easily. You could pin the external to a specific revision if you wanted, or not. I expect that in trunk you don't want it pinned, then in tag you do want it pinned.

>Question2 (refer to Note2): I need to refer to a specific folder revision and the destination for BatProject >and ComProject is the same, with svn:externals there's a problem: can't exists the destination folder >(doesn't matter I can move fea1main.ini within BatProject or ComProject) and the last external were >updated correctly but the previous were removed. Alternatively, I've tried to use svn switch instruction, >but it updates files contents only if the file exists in both repositories (from .. to ..)! It's really a hard >solution to maintain, we go a lot of files and the number of them could often change. Any suggestions?

I can only assume that the Bat and Com projects are shared with projects other than MainProject? If not, why the heck are they separate projects? If they aren't shared I would just source then as sub-folders of the MainProject folder. You can still restrict access at the folder level if that is what you need. If this is not possible I don't see another way to do it other than checking in the .bat files into MainProject from a post commit script in the Bat/Com repos. (Yuck!)

If there is in any way possible to have these as sub-folders in MainProject that would make using externals doable?

In my opinion FileExternals are not really useable as they are implemented right now, unless you are referring to the same file multiple places in a single project folder that you know your devs will always have checked out. Because if the file is not in the working copy then the file externals don't work.

BOb

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

To unsubscribe from this discussion, e-mail: [users-unsubscribe_at_subversion.tigris.org].
Received on 2009-05-28 17:36:00 CEST

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.